Wenn man es richtig macht, ist dies nicht nötig...Kukulkan hat geschrieben:Man muss auch begreifen, dass das dann nicht dauerhaft gilt, sondern nur bis nur nächsten Bewegung. Daher muss man das immer im Haupt-Loop neu aufrufen.
Man kann an gdk_window_set_cursor_() nicht WindowID(1) direkt übergeben,
sondern muß über die Struktur Widget/window gehen:
Code: Alles auswählen
OpenWindow(0, 100, 100, 170, 160, "Cursor-Test")
ButtonGadget(0, 10, 10, WindowWidth(0) - 20, 24, "X-Cursor")
ButtonGadget(1, 10, 40, WindowWidth(0) - 20, 24, "O-Cursor")
ButtonGadget(2, 10, 70, WindowWidth(0) - 20, 24, "+-Cursor")
ButtonGadget(3, 10, 100, WindowWidth(0) - 20, 24, "Sprühflasche")
ButtonGadget(4, 10, 130, WindowWidth(0) - 20, 24, "Uhr")
Procedure ChangeCursor(CursorID.I)
*Widget.GtkWidget = WindowID(0)
*Cursor.GdkCursor = gdk_cursor_new_(CursorID)
If *Cursor
gdk_window_set_cursor_(*Widget\window, *Cursor)
EndIf
EndProcedure
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
Break
Case #PB_Event_Gadget
Select EventGadget()
Case 0
ChangeCursor(#GDK_X_CURSOR)
Case 1
ChangeCursor(#GDK_CIRCLE)
Case 2
ChangeCursor(#GDK_TCROSS)
Case 3
ChangeCursor(#GDK_SPRAYCAN)
Case 4
ChangeCursor(#GDK_WATCH)
EndSelect
EndSelect
ForEverBeispiel von Erlend ansehen:
http://www.purebasic.fr/english/viewtop ... 09&start=1
GBeebe hat gezeigt, wie man ein PNG-Bild als Cursor einsetzt:
http://www.purebasic.fr/english/viewtop ... 12&t=41209