2016-08-31 1 views
0

Ich habe eine Anwendung mit einer Radio-Gruppe. Die Anzahl von Radio ist nicht definiert, so dass ich sie eins nach dem anderen mit dem folgenden Code zuweisen hatte:Holen Sie sich das Ereignis von Radio definiert mit Assign

$CmdList = _FileListToArray($CmdDir) 
If @error == 0 Then 
    for $i = 1 To $CmdList[0] 
     Assign("Radio"&$i, GUICtrlCreateRadio(StringSplit($CmdList[$i], ".")[1], 20 + (100 + 10)*$i, 35, 100, 20)) 
    Next 
Else 
    ConsoleWrite("error directory path") 
EndIf 

Also, ich habe Radio1, Radio2, ...

Ereignisse zu steuern, ich verwende die folgende Struktur:

While 1 
    $nMsg = GUIGetMsg() 
    Switch $nMsg 
     Case $GUI_EVENT_CLOSE 
      Exit 

     [...] 

    EndSwitch 
WEnd 

Wie kann ich eine Funktion zum Anrufen definieren, wenn ich auf ein Radio klicke? Weil ich nicht definieren kann einen Fall $ Radio1, Fall $ Radio2, ...

bearbeiten: Durch das Hinzufügen eines Fall Eval ("Radio1"), es funktioniert. Gibt es eine Möglichkeit, Fälle für einen Switch zu generieren?

Antwort

0

fand ich eine Lösung:

Case Eval("Radio"&1) to Eval("Radio"&$NumberRadio) 

Es funktioniert!

Verwandte Themen