Laden...

Suche Crossplattform GUI-Framework

Erstellt von e86 vor 17 Jahren Letzter Beitrag vor 17 Jahren 2.985 Views
E
e86 Themenstarter:in
56 Beiträge seit 2004
vor 17 Jahren
Suche Crossplattform GUI-Framework

Hallo,

ich bin dabei eine Anwendung in C# 2.0 zu entwickeln, welche auf verschiedenen Betriebssystemen laufen soll. Als Zielsysteme sehe ich erstmal Windows XP und Linux (Ubuntu oder SuSE).

Dazu habe ich mich mit den wxWidgets.NET auseinander gesetzt. Dazu gab es noch ein Konvertierungstool, was einem ein Projekt von WindowsForms in wxWidget konvertiert. Nur scheint es da noch herbe Probleme zu geben. Kennt jemand Tutorials dazu oder am Besten gleich einen Designer (auch Plugins fürs VS oder #develop) ?

Habt ihr bereits Erfahrungen mit dem wxWidget-Framework gesammelt ? Wenn ja, könnt ihr diese bitte mal hier reinschreiben. Oder arbeitet ihr mit einem anderen Framework ? Auch dann wäre es schön mal etwas darüber zu hören. 🙂

k00ni

S
8.746 Beiträge seit 2005
vor 17 Jahren

GTK# oder Windows.Forms.

E
e86 Themenstarter:in
56 Beiträge seit 2004
vor 17 Jahren

Hallo,

ich habe gehört, dass GTK# nicht so gut auf nicht-Linux-Systemen läuft. Es wird keine Native GUI angesprochen, sondern auf die des Betriebssystems aufgesetzt, wenn ich das was ich bis jetzt gehört habe, richtig verstanden habe.

Aber ich würde zur Zeit eigentlich nur die Plattformen Linux und Windows bedienen wollen mit meiner Software. Gibt es für GTK# ein Plugin für das Visual Studio 2005 ? In #develop scheint es ja vorhanden zu sein, nur scheint mir, dass es dort noch Probleme mit den Gtk#-Windows-Dlls gibt... Schauen wir mal, ob ich die noch wegbekomm.

k00ni
p.s.: 4:2 -> gute erste Halbzeit 😉

1.549 Beiträge seit 2004
vor 17 Jahren

bei einer anwendung mit 2.0 und Linux wirst du auch noch mit anderen Problem zu kämpfen haben die 1.1 Implementirung von Mono ist ja noch nicht mal GANZ fertig und Windows Forms heißen nicht umsonst WINDOWS Forms

Wir Arbeiten eigendlich nicht wir nehmen nur das geld

E
e86 Themenstarter:in
56 Beiträge seit 2004
vor 17 Jahren

N'abend,

ich habe mir nun das neuste GTK# für Windows eingerichtet, Version 2.8.4 glaub ich. Zudem noch das aktuelleste Mono (1.1.15.1) und #develop 2.0 (1462).

Nach einem Testlauf konnte ich nun ein Fenster sehen.. ohne vorherige Fehlermeldung 👅

Ich werd mal testen, in wie weit die Komponenten von GTK zu meiner Anwendung passen oder ob ich bei den WindowsForms bleiben muss.

Wie ist das nun mit GTK#? Ist das fertig kompilierte Programm nun ein durch einen "mono MeinProgramm.exe" unter Linux lauffähig? Was sollte ich bei der Entwicklung beachten?

Ich bin in dieser Richtung noch sehr neu und hoffe, dass ihr mir (wie bisher) weiterhelfen könntet 🙂

Danke für die bisherigen Posts und noch einen schönen Abend,

k00ni

<nachtrag>

Ich habe gerade gemerkt, dass #develop keinen grafischen Designer für GTK# zur Verfügung stellt. 🙁 Somit wird für mich das Ding nicht einsetztbar, da ich auf diesen angewiesen bin. Und wieso kann ich im #develop bei einem vb.net projekt nicht für mono kompilieren lassen?

</nachtrag>

M
456 Beiträge seit 2004
vor 17 Jahren

Für GTK Anwendungen wir meist Glade verwendet um die Gui zu basteln. Wenn du das GTK SDK installiert hast, dann sollte das Programm eigentlich mit dabei sein. Bei GTK werden Benutzeroberflächen mit Hilfe von Xml beschrieben.
Hier gibt's ne nette Demo wie man mit Glade Gui-Anwendungen baut und mit C# verknüpft: http://nat.org/demos/gtksharp.html

I am Jack's smirking revenge.
I am Jack's raging bile duct.
I am Jack's cold sweat.
I am Jack's complete lack of surprise.
I am Jack's broken heart.
I am Jack's wasted life.

M
2 Beiträge seit 2006
vor 17 Jahren

In Monodevelop (Linux) ist mittlerweile ein Gui-Designer für Gtk# enthalten, das ganze ist aber noch etwas experementiell, und hat teilweise noch einige Macken.

Original von maxE
Bei GTK werden Benutzeroberflächen mit Hilfe von Xml beschrieben. Nein, das trifft nur auf Glade zu.

100 Beiträge seit 2006
vor 17 Jahren

Werden inzwischen bei mono das .NET 2.0-System der Konfigurationsdateien unterstützt?

<namespace>.Properties.Settings mySettings = new <namespace>.Properties.Settings();
..
..
mySettings.Save();

Ich finde diese Methodik einfach sauber und elegant. Und besonders für Linux, wo es keine Registry gibt, wäre die Unterstützung eine Erleichterung bei der Entwicklung.

Wenn ich zudem eine C# - Anwendung für Linux verteilen möchte, dann kann das nur in Quelltextform Sinn machen oder?
Da die verschiedenen mono-Version meines Verständnisses nach zueinander inkompatibel sind, z.B. kompiliert mit 1.1.3498348 und auf dem Zielsystem befindet sich 1.1.854582.

Oder gibt es vielleicht die Möglichkeit die mono-Bibliothek statisch in die ausführbare zu linken?

243 Beiträge seit 2005
vor 17 Jahren

Original von S.H.-Teichhof
bei einer anwendung mit 2.0 und Linux wirst du auch noch mit anderen Problem zu kämpfen haben die 1.1 Implementirung von Mono ist ja noch nicht mal GANZ fertig und Windows Forms heißen nicht umsonst WINDOWS Forms

Wenn nicht mal v1.1 fertig ist wird es v2 wohl auch noch nicht geben, oder?