[libglade] Mehrere Fenster
-
Hallo
ich arbeite zur Zeit an einem kleinem Projekt und benutze Glade-2 für die Erstellung der graphischen Oberfläche und libglade, um aus von Glade-2 erzeugte xml Datei zu lesen und Fenster darzustellen. Ich hab bis jetzt nur ein einziges Fenster und so läuft alles ganz ok. Der Name des Festers ist mainWindow und hab folgendes:
xml = glade_xml_new(glade_file, "mainWindow", NULL); glade_xml_signal_autoconnect(xml); gtk_main();
So, jetzt brauche ich ein kleines DialogFenster, welches ich selber mit Glade-2 erstelle und in der xml Datei gibt es Objekt von Typ GtkDialog mit Namen "dia". Mein Problem ist, dass ich nicht weiß, wie ich dieses Fenster anzeigen kann. Wenn ich folgendes mache:
GtkWidget *dia; dia = glade_xml_get_widget(xml, "dia");
dann ist dia == NULL. Wie kann ich dieses Fenster anzeigen?
Danke
-
Dieser Thread wurde von Moderator/in nman aus dem Forum Linux/Unix in das Forum Andere GUIs - Qt, GTK+, wxWidgets verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
supertux schrieb:
Hallo
ich arbeite zur Zeit an einem kleinem Projekt und benutze Glade-2 für die Erstellung der graphischen Oberfläche und libglade, um aus von Glade-2 erzeugte xml Datei zu lesen und Fenster darzustellen. Ich hab bis jetzt nur ein einziges Fenster und so läuft alles ganz ok. Der Name des Festers ist mainWindow und hab folgendes:
xml = glade_xml_new(glade_file, "mainWindow", NULL); glade_xml_signal_autoconnect(xml); gtk_main();
So, jetzt brauche ich ein kleines DialogFenster, welches ich selber mit Glade-2 erstelle und in der xml Datei gibt es Objekt von Typ GtkDialog mit Namen "dia". Mein Problem ist, dass ich nicht weiß, wie ich dieses Fenster anzeigen kann. Wenn ich folgendes mache:
GtkWidget *dia; dia = glade_xml_get_widget(xml, "dia");
dann ist dia == NULL. Wie kann ich dieses Fenster anzeigen?
Danke
Wie der dialog genau heissen soll kannst du ja in Glade festlegen nur du musst beachten das die namen Casesensitive sind d.h. wenn du "Dia" als namen hast musst du es auch mit "Dia" suchen und nicht mit "dia"
Am besten du schaust mal im property window von glade nach wie dein Dialog benannt ist und/oder gibst im dort einen anderen namen.
BR
evilissimo
-
Hi
ich weiss ja, wie der dialog heisst, und dass es Case Senstitive ist, weiss ich auch, ich hab extra aufgepasst, dass alles miteinander passt. Und bekomme trotzdem NULL.
Wenn ich aus Spass sowas mache:xml = glade_xml_new(glade_file, "dia", NULL); glade_xml_signal_autoconnect(xml); GtkWidget *dia; dia = glade_xml_get_widget(xml, "mainWindow"); ... gtk_main();
also nur die Namen vertausche, dann ist dia wieder NULL und statt mainWindow wird dia angezeigt.
-
Vielleicht packst du das autoconnect erst dannach hin.
BR
evilissimo
-
evilissimo schrieb:
Vielleicht packst du das autoconnect erst dannach hin.
BR
evilissimo
das hat aber nichts gebracht ....