Refresh in GTK?
-
Hallo,
ich versuche mich grad etwas in der GTK Programmierung und scheitere schon ein einer einfachen Aufgabe.
Ich erstelle ein normales Fenster mit zwei Buttons. Beim Aufruf des einen soll ein weiterer Dialog (Info Dialog mit einem OK Button) geöffnet werden in dem der aktuelle Status angezeigt wird.
Soweit kein Problem mein Dialog kommt auf Knopfdruck hoch. Wenn ich nun mit gtk_label_set_text (GTK_LABEL(label),"mein text mit zaehler...") den Inhalt meines Labels ändere erscheint nicht der neue sondern der alte bleibt so lang bis ich einmal den Focus auf ein anderes Fenster gelegt habe und wieder zurück zu meinem Dialog klicke.
Habe schon gtk_widget_queue_draw(label) versucht, jedoch ohne Erfolg.Hat jemand von euch irgendwelche Hinweise für mich?
mfg.
flovoid on_connect_button_clicked (GtkButton *button, gpointer user_data) { GtkWidget * label; pthread_create ( &mythread, NULL, (void *)test_thread_func, NULL ); disableConnect(); msg_dialog = create_msg_dialog(); label = lookup_widget(msg_dialog,"label1"); gtk_label_set_text(GTK_LABEL(label),"Unable to connect..."); gtk_widget_show(msg_dialog); } int set_state_text (char * msg) { GtkWidget * label; label = lookup_widget(msg_dialog,"label1"); gtk_label_set_text (GTK_LABEL(label),msg); gtk_widget_activate(msg_dialog); }
-
Wenn du Threads benutzt, gibt es einige Sachen zu beachten. Schau dir folgendes mal an: http://www.gtk.org/faq/#AEN482
-
Danke. Kaum macht man es richtig -> schon funktionierts.
mfg.
flo