Seite 1 von 1

Combobox ausklappen - Mauszeiger goes crazy

Verfasst: 16.11.2012 17:19
von NicknameFJ
Hallo,

ich habe ein Programm > 30K Zeilen deshalb kann ich nicht das ganze Programm hier reinstellen.

Ich habe dort eine ComboBox, die ich programmgesteuert gleich aufklappen lasse. Das Programm läuft auf einem XP und mehreren WIN 7 Rechnern. Das Aufklappen funktioniert auch so weit, jedoch wird nach dem Aufklappen der ComboBox der Mauszeiger nicht mehr angezeigt.

Ich konnte das Problem soweit eingrenzen (?) dass ich hier einen kurzen Code posten kann

Code: Alles auswählen

If OpenWindow(1,0,0,200,150,"TEST")
 ;  CreateGadgetList(WindowID(1))
   ComboBoxGadget(1,10,10,100,180,#PB_ComboBox_Editable)
   
   For i = 0 To 999
     AddGadgetItem(1,-1,RSet(Str(i),3,"0"))
   Next

    SendMessage_(GadgetID(1),#CB_SHOWDROPDOWN,1,1)
   
   Repeat
     event = WaitWindowEvent()
   Until Event = #PB_Event_CloseWindow

EndIf
Führe ich diesen Code aus wird zwar der Mauszeiger dennoch angezeigt, jedoch als "Eieruhr". Ich kann mir nicht vorstellen, dass mein Rechner mit dem Code ausgelastet ist :-) Leider kann ich in diesem kurzem Code nicht nachstellen, dass kein Mauszeiger mehr angezeigt wird, aber da die Eieruhr angezeigt wird vermute ich dass ich beim Sendmessage irgend was nicht beachte. Die Sendmessage Zeile auskommentiert und der Mauszeiger macht was er soll, aber ich möchte ja die Combobox ausgeklappt haben und der Mauszeiger soll auch anständig sein!

Kann das jemand bestätigen?

Hat hier jemand eine Idee und kann mir sagen wie ich die Combobox richtig auszuklappen habe?

getestet mit PB 4.10 (mit dem mein eigentliches Programm compiliert wird, als auch mit 4.61 und 5.00)

Danke im Vorraus

NicknameFJ

Re: Combobox ausklappen - Mauszeiger goes crazy

Verfasst: 16.11.2012 18:56
von STARGÅTE
Ich behaupte mal, dass du nich eine Art "Repaint" senden musst.

Außerdem würde ich das Gadget nicht 130px Hoch machen, denn der Height-Parameter bestimmt nicht die Ausklappgröße (kann sein das es früher anders war).

Re: Combobox ausklappen - Mauszeiger goes crazy

Verfasst: 16.11.2012 19:22
von edel
Versuch mal folgenden Code

Code: Alles auswählen

   SendMessage_(GadgetID(1),#CB_SHOWDROPDOWN,1,0)
   a = LoadCursor_(0,#IDC_ARROW)
   SetCursor_(a)

Re: Combobox ausklappen - Mauszeiger goes crazy

Verfasst: 16.11.2012 20:12
von NicknameFJ
Danke Euch beiden.

@Stargate: Ja, das mit der Höhe ist mir klar, war aber früher anders. Deshalb habe ich hier die Höhe mit angegeben. Das Snippet habe ich ursprünglich auf PB4.10 getestet. Daher auch CreateGadgetList, was ich zum Test für Euch (mit PB 4.61 oder 5.00) auskommentiert habe.

@Edel: Den Cursor neu laden hat geholfen. Nicht nur hier mit dem Snippet sondern auch im richtigen Programm wo der Mauszeiger überhaupt nicht mehr angezeigt wurde! Im richtigen Prog. habe ich es vorher auch schon mit ShowCursor_() versucht aber ohne Erfolg. LoadCursor_() hat geholfen.

Danke

NicknameFJ