Michaela: GUI für Win und Linux mit VS.net

Hi

am liebsten programmiere ich Anwendungen in C++ mit dem Visual Studio, welches bequem und einfach GUIs zusammenstellen lässt.
Nun würde ich gerne einmal eine Anwendung schreiben, die auch über eine grafische Oberfläche verfügt, jedoch nicht nur unter Windows, sondern auch unter Linux lauffähig sein sollte.
Sehr angenehm wäre es, wenn ich dafür die gewohnte VS.net IDE nutzen könnte und zudem auch den "Klick-Designer" davon :-)

Konnte leider das Tutorial nicht mehr finden, dass ich mir letzte Woche extra rausgesucht habe, was sich genau mit dem Thema beschäftigt hat :( Deshalb frage ich euch, ob ihr das zufällig gebookmarkt habt oder mir anderweitig Rat geben könnt.

Vielen Dank

  1. Hi,

    am liebsten programmiere ich Anwendungen in C++ mit dem Visual Studio, welches bequem und einfach GUIs zusammenstellen lässt.
    Nun würde ich gerne einmal eine Anwendung schreiben, die auch über eine grafische Oberfläche verfügt, jedoch nicht nur unter Windows, sondern auch unter Linux lauffähig sein sollte.

    Naja, ich weiß nicht inwieweit die .NET-Portierungen für Linux/... namens Mono oder DotGNU sind, was die Kompabilität bezüglich des GUI-Teils angeht - wenn sie schon weit sind, kannst Du einfach Deine Programme wie bisher weiterprogrammieren (sofern Du .NET verwendest und nicht MFC; wenn Du MFC verwendest und es auch noch magst, dann fehlen mir irgendwie die Worte ;-)) und einfach unter Mono/DotGNU dann ausführen. Ich denke aber, ich lehne mich nicht zu weit aus dem Fenster, wenn ich sage, dass die noch nicht so weit sind und das nicht funktionieren wird...

    Ansonsten: Du musst bedenken, dass VS.NET von Microsoft ist und Microsoft nicht wirklich ein Interesse daran hat, Dir ein Plattformübergreifendes Tool zur Verfügung zu stellen.

    Es gibt jedoch C++-Toolkits, die plattformübergreifend funktionieren, darunter wxWidgets, GTK+ oder QT. Zumindest bei QT kommt auch ein Programm namens "QT Designer" mit, mit dem Du auch GUIs zusammenklicken kann und den man auch in Visual Studio .NET integrieren kann [1]. Bei wxWidgets und GTK+ gibt es sowas m.W. nicht, ich habe mit den beiden jedoch nie ernsthaft gearbeitet, d.h. das kann durchaus bloß meine Unwissenheit sein. QT hat jedoch den "Nachteil", dass Du - wenn Du die kostenlose Version davon nutzen willst - Deine Software unter die GPL oder eine andere OpenSource-Lizenz stellen musst. Wenn Du das nicht willst, musst Du für QT zahlen, was nicht wenig Geld kostet.

    Diese Toolkits erfordern natürlich, dass Du umdenkst, was den Sourcecode angeht, denn Du musst Dich dann der Klassenbibliothek dieser Toolkits anpassen. Dafür läuft dann Deine Software auch auf verschiedenen Betriebssystemen (sofern Du sie dann auch auf verschiedenen Systemen kompilierst) und nicht nur unter Windows.

    Viele Grüße,
    Christian

    [1] Bin mir aber nicht ganz sicher, ob das nur bei der kommerziellen Version gilt oder auch bei der OpenSource-Variante. Müsstest Du selbst mal sehen.