Seite 2 von 2

Re: Gadgets in Schleifen

Verfasst: 20.12.2020 19:45
von Demivec

Code: Alles auswählen

;Setup
Dim GadgetButtonList(63)

GadgetButtonList(0) = #Button_0
GadgetButtonList(1) = #Button_1
GadgetButtonList(2) = #Button_2
;...
GadgetList(63) = #Button_63 

;use
Procedure ResetButtons()
  Shared GadgetButtonList()
  
  For x = GadgetButtonList(0) To GadgetButtonList(63)
    
    SetGadgetState(x,0) 
    
    
  Next
  
  
EndProcedure

Re: Gadgets in Schleifen

Verfasst: 20.12.2020 20:57
von TWELVE
Ich danke erstmal für Euren Input !

Habe soweit erstmal alle anstehenden Probleme gelöst.

Warum der Formdesigner dem "höchsten" Button( bei 10 Buttons steht Button_10 immer ganz oben in der Enumeration) immer die Constant 0 zuweist und die Zuordnung damit
verdreht ist, bleibt allerdings ungeklärt.

Re: Gadgets in Schleifen

Verfasst: 20.12.2020 21:01
von TWELVE
Demivec hat geschrieben:

Code: Alles auswählen

;Setup
Dim GadgetButtonList(63)

GadgetButtonList(0) = #Button_0
GadgetButtonList(1) = #Button_1
GadgetButtonList(2) = #Button_2
;...
GadgetList(63) = #Button_63 

;use
Procedure ResetButtons()
  Shared GadgetButtonList()
  
  For x = GadgetButtonList(0) To GadgetButtonList(63)
    
    SetGadgetState(x,0) 
    
    
  Next
  
  
EndProcedure

Mmmh..welches Problem würde das losen ?


GadgetButtonList(0) = #Button_0

#Button_0 hat den Wert 63.

Ne Erklärung dazu wäre nicht schlecht.

Mir wäre es aber logischer, wenn die Enumeration es gleich richtig machen würde.

Re: Gadgets in Schleifen

Verfasst: 21.12.2020 00:11
von Demivec
TWELVE hat geschrieben: Mmmh..welches Problem würde das losen ?


GadgetButtonList(0) = #Button_0

#Button_0 hat den Wert 63.

Ne Erklärung dazu wäre nicht schlecht.

Mir wäre es aber logischer, wenn die Enumeration es gleich richtig machen würde.
Erläuterung: Das Array umgeht alle Probleme mit den für die Gadgets verwendeten Konstanten. Die Konstanten können beliebige Werte und in beliebiger Reihenfolge sein. Das Array führt eine Liste der Konstanten, und Sie durchlaufen einfach die im Array gespeicherten Werte und setzen / deaktivieren / lesen sie alle nach Ihren Wünschen. Es wird auch die Frage umgangen, warum FormDesigner sie in die Reihenfolge gebracht hat, in der sie aufgetreten sind, oder Probleme verhindert, wenn Lücken in den konstanten Werten vorhanden sind.

Re: Gadgets in Schleifen

Verfasst: 21.12.2020 00:31
von mk-soft
@Demivec

du hast dich verdoppelt :roll:

Code: Alles auswählen

;Setup
Dim GadgetButtonList(63)

GadgetButtonList(0) = #Button_0
GadgetButtonList(1) = #Button_1
GadgetButtonList(2) = #Button_2
;...
GadgetList(63) = #Button_63 

;use
Procedure ResetButtons()
  Shared GadgetButtonList()
  
  For x = 0 To 63
    
    SetGadgetState(GadgetButtonList(x),0) 
    
  Next
  
  
EndProcedure

Re: Gadgets in Schleifen

Verfasst: 21.12.2020 03:24
von Demivec
mk-soft hat geschrieben:@Demivec

du hast dich verdoppelt :roll:

Code: Alles auswählen

;Setup
Dim GadgetButtonList(63)

GadgetButtonList(0) = #Button_0
GadgetButtonList(1) = #Button_1
GadgetButtonList(2) = #Button_2
;...
GadgetList(63) = #Button_63 

;use
Procedure ResetButtons()
  Shared GadgetButtonList()
  
  For x = 0 To 63
    
    SetGadgetState(GadgetButtonList(x),0) 
    
  Next
  
  
EndProcedure
Danke.