2012-04-22 4 views
10

Ich versuche den Cursor auf eine Uhr zu setzen. Das Problem ist, dass gdk_set_cursor() ein gdk_window benötigt. Wie bekomme ich das gdk_window eines gtk_window in C? Ich habe Beispiele für gtkmm und pygtk gesehen, aber ich kann die entsprechende C-Funktion nicht finden.Wie bekomme ich das gdk-Fenster für ein gtk-Fenster in C?

Antwort

21
GdkWindow *gdk_window = gtk_widget_get_window(GTK_WIDGET(gtk_window)); 

oder, pre GTK 2.14, aber jetzt nicht erlaubt:

GdkWindow *gdk_window = gtk_window->window; 
+0

Dank, dass das Problem der lösen, wie die gdkwindow zu bekommen. Leider bleibt der Mauszeiger immer gleich. \t GdkWindow * gdkWindow = gtk_widget_get_window (Fenster); \t GdkCursor * gdkCursor = gdk_cursor_new (GDK_WATCH); \t gdk_window_set_cursor (gdkWindow, gdkCursor); –

+0

while (gtk_events_pending()) {gtk_main_iteration(); } hilft oft. – murrayc

Verwandte Themen