Cursor auf Gadgets ändern (nach klassen)

Hier könnt Ihr gute, von Euch geschriebene Codes posten. Sie müssen auf jeden Fall funktionieren und sollten möglichst effizient, elegant und beispielhaft oder einfach nur cool sein.
Benutzeravatar
Franky
Beiträge: 1132
Registriert: 29.08.2004 16:31
Wohnort: Münsterland
Kontaktdaten:

Cursor auf Gadgets ändern (nach klassen)

Beitrag von Franky »

So, da bei PGS immer der Cursor flackerte mit Danilo´s verfahren (siehe Codearchiv) hab ich mir selbst was geschrieben.

Hier wird der Cursor einmal geändert und zum ende des Programms wieder zurückgeändert.


Vorsicht: mit SetClassLong_( setze ich den Wert für alle Gadgets dieser Klasse, vielleicht auch bei anderen Anwendungen (hatte ich noch nicht, könnte aber sein (oder? ). Wenn ihr dieses Verfahren nutzt, müsst ihr die abfrage sehr genau machen


Code: Alles auswählen

handle=LoadCursor_(0,#IDC_CROSS	)
CreateImage(1,80,80)
      StartDrawing(ImageOutput())
                FrontColor(255,0,0)
                  Circle(40,40,40)
      StopDrawing()
If OpenWindow(1,100,200,210,210,#PB_Window_SystemMenu,"Cursor ändern")
                  CreateGadgetList(WindowID())
                            ImageGadget(1,10,10,80,80,UseImage(1))
                            ImageGadget(2,120,10,80,80,UseImage(1))
                            ImageGadget(3,120,120,80,80,UseImage(1))
                            ImageGadget(4,10,120,80,80,UseImage(1))
                            normhandle=GetWindowLong_(GadgetID(1),#gcl_hcursor)
                            SetClassLong_(GadgetID(1),#gcl_hcursor,handle)
                            Repeat
                                  event=WaitWindowEvent()
                             Until event=#WM_CLOSE
                             SetClassLong_(GadgetID(1),#gcl_hcursor,normhandle)
                             CloseWindow(1)
EndIf
End                             
Falsch zugeordnetes Zitat des Tages: "O'zapft is" - Edward Snowden :)
glubschi90
Beiträge: 274
Registriert: 04.09.2004 01:43
Wohnort: Würzburg

Beitrag von glubschi90 »

hm...
Irgendwie funktioniert's bei mir nich'. :|
PureBasic 4.30
Benutzeravatar
Franky
Beiträge: 1132
Registriert: 29.08.2004 16:31
Wohnort: Münsterland
Kontaktdaten:

Beitrag von Franky »

Seltsam, bei mir läufts, kann das jemand bestätigen, dass das auch bei anderen nicht läuft?
Falsch zugeordnetes Zitat des Tages: "O'zapft is" - Edward Snowden :)
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

ich kann's nicht bestätigen, also bei mir läufts
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Andre
PureBasic Team
Beiträge: 1765
Registriert: 11.09.2004 16:35
Computerausstattung: MacBook Core2Duo mit MacOS 10.6.8
Lenovo Y50 i7 mit Windows 10
Wohnort: Saxony / Deutscheinsiedel
Kontaktdaten:

Beitrag von Andre »

Läuft bei mir auch (WinXP SP1).
Bye,
...André
(PureBasicTeam::Docs - PureArea.net | Bestellen:: PureBasic | PureVisionXP)
Antworten