Cursor ändern unter GTK

In dieser Linux-Ecke dürfen nur Themen rund um Linux geschrieben werden.
Beiträge, die plattformübergreifend sind, gehören ins 'Allgemein'-Forum.
bec
Beiträge: 13
Registriert: 01.03.2007 23:00

Cursor ändern unter GTK

Beitrag von bec »

Code: Alles auswählen

maus = gdk_cursor_new_(#GDK_CROSSHAIR)
OpenWindow(0,100,100,400,300,"")
CreateGadgetList(WindowID(0))
ButtonGadget(0,50,100,200,30,"Mauszeiger verändern")
ButtonGadget(1,50,200,200,30,"Beenden")
Repeat
  ev = WaitWindowEvent()
  If ev = #PB_Event_Gadget
     Select EventGadget()
       Case 0
         gdk_window_set_cursor_(WindowID(0),maus)
       Case 1
         End
     EndSelect   
  EndIf
Until ev = #PB_Event_CloseWindow

Hallo, ich möchte in einem Zeichenfeld den Cursor in ein Fadenkreuz verändern.
Wie macht man das unter Linux ??? Zu dem Thema gab es schon mal einen älteren Thread,
aber der Hilferuf verhallte ungehört. :( Deshalb versuche ich es jetzt auch mal.
Kann hier jemand sagen was an dem Progrämmchen grundsätzlich falsch ist
oder wie man an die API-Programmierung unter Linux generell herangeht ???


bec
(Debian Etch, PB4.20)
freak
PureBasic Team
Beiträge: 766
Registriert: 29.08.2004 00:20
Wohnort: Stuttgart

Beitrag von freak »

WindowID() gibt einen GtkWindow pointer zurück, nicht GdkWindow (was deine Funktion erwartet).
So gehts:

Code: Alles auswählen

         *Widget.GtkWidget = WindowID(0)
         gdk_window_set_cursor_(*Widget\window,maus)
(ein GtkWindow ist auch ein GtkWidget)
bec
Beiträge: 13
Registriert: 01.03.2007 23:00

Beitrag von bec »

@freak: Genau das war es was ich gesucht habe. :allright: :allright: :allright:
Ein bischen mehr Wissen macht eben den Unterschied, vielen Dank.

bec
Antworten