Zum Inhalt springen

gtk-problem beim schließen eines widgets


meneke

Empfohlene Beiträge

hiho

ich bin grad dabei was mit gtk zu proggen (obwohl ich FiSi bin^^)

bin mit dem programm auch gut voran gekommen und fertig

ich habe jetzt nur ein problem...

ich beschreib ma mein prog:

ich habe ein hauptfenster, dann wird über ein entry eine eingabe realisiert und in einem vorhandenen datensatz nach diesem string gesucht...

befinden sich mehrere datensätze die dem string entsprechen wird ein zweites fenster geöffnet wo in einer liste alle gefundenen datensätze (passend zum string) dargestellt werden... dort kann dann ein gewünschter ausgewählt werden und dann sollte sich das zweite fenster mit dem auswählen des datensatzes schließen. macht es aber nicht :-(

da ich die graphische oberfläche mit glade gestaltet habe (aber nur das hauptfenster) habe ich mehrere dateien...

in der support.h stehen die globalen variabeln die ich in mehreren funktion der callbacks.c brauche

das zweite fenster ist wie folgt deklariert:

GtkWidget *ansicht;

in ansicht ist der view (die liste) sowie der scrollbalken enthalten

gtk_container_add(GTK_CONTAINER(scrollbar), view);

gtk_container_add(GTK_CONTAINER(ansicht), scrollbar);

mit

gtk_widget_show_all (ansicht);

lass ich mir das fenster anzeigen und mit dem signal

g_signal_connect (G_OBJECT (view), "row-activated", G_CALLBACK (onTreeViewRowActivated), ansicht);

wird in der liste, wenn eine zeile aktiviert wurde eine funktion ausgeführt

in dieser funktion muss dann das fenster geschlossen werden...

dies sollte er mit:

gtk_widget_destroy (GTK_WIDGET (ansicht));

eigentlich tun...macht er aber nicht....

beim kompilieren kommt keine fehlermeldung

ausführung läuft auch alles ohne probleme, nur wenn ich aus der liste eine zeile aktiviere (doppelklick oder ENTER) erscheint in der konsole:

Gtk-CRITICAL **: gtk_widget_destroy: assertion `GTK_IS_WIDGET (widget)' failed

und das fenster bleibt offen

wenn ich ein weiteres signal erstelle:

g_signal_connect (G_OBJECT (view), "row-activated", G_CALLBACK (gtk_widget_destroy), ansicht);

schließt sich beim aktivieren nur der view, also bleibt ein leeres fenster...

hat jemand einen rat oder sonst was, das mir helfen könnte?

kennt sich überhaupt jemand mit gtk aus?

mfg

meneke

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...