BUG? Spingadget in Verbindung mit Panelgadget

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
Mischa
Beiträge: 152
Registriert: 29.08.2004 06:52
Wohnort: Hellhorst

Beitrag von Mischa »

@CSprengel:

Scheint ein Bug zu sein, oder auch nicht.
SpinGadget() unterstützt laut Hilfe EventType() eigentlich nicht!

Hier ein workaround, falls es Dir hilft.
Nochmal leicht geändert:

Code: Alles auswählen

WinID = OpenWindow(0, 0, 0, 200, 200, #PB_Window_MinimizeGadget, "Paneltest")
  CreateGadgetList(WinID)
    PanelGadget(1, 5, 5, 100, 100)
      AddGadgetItem(1, 0, "Bla")
        SpinGadget(2, 5, 5, 90, 20, 0, 10000)
        SetGadgetState(2, 100): SetGadgetText(2, Str(100))
    CloseGadgetList()
   
Repeat
  Event = WaitWindowEvent()
  If Event
    Select Event
      Case #PB_EventCloseWindow
        End
      Case #PB_Event_Gadget
        Select EventGadgetID()
          Case 2
            If old <> Val(GetGadgetText(2))
              old=Val(GetGadgetText(2)) : SetGadgetState(2, old)
            ElseIf old <> GetGadgetState(2)
              old=GetGadgetState(2) : SetGadgetText(2, Str(old))
            EndIf
        EndSelect
    EndSelect
  EndIf   
ForEver
PS: Interessant ist, daß Grenzüberschreitungen des Maximalwertes
ohne Panel ganz anders ausgewertet werden. :?

Gruß,
Mischa
THEEX
Beiträge: 804
Registriert: 07.09.2004 03:13

Beitrag von THEEX »

@Mischa
Erstmal mal danke für Dein Workaround, daß werd ich dann wohl auf mein Programm umsetzen.

Trotzdem seh ich das ganze als Fehler. Was auch seltsam ist, daß ein EventType nicht angenommen wird, wenn folgende Zeile enthalten ist:

Code: Alles auswählen

SetGadgetText(2, Str(GetGadgetState(2)))

Aber eben nur in Verbindung mit dem PanelGadget(). Ohne die Zeile wird ein Eventype auch mit Panel erkannt.
Ich find's auch nicht grad rümlich, daß PB normal keine direkte Zahleneingabe im SpingGadget vor sieht. Was aber normal mit einem EventType erkennbar ist und hier sogar als Beispiel gehandelt wird.
Sicherlich kann man eine direkte Zahleneingabe noch anders abfragen, hatte aber die letzten Tage einfach keine Zeit zu, mal selbst zu schauen und ich bin einfach der Meinung, daß hier innerhalb von PB noch etwas geändert werden muß!
Antworten