2017-09-28 6 views
-1

各キャプションテキストを取得するには、チェックボックスを繰り返し実行します。私はこのコードを持っていますが、動作しません。誰かが私に何が間違っているか教えてもらえますかチェックボックスからの読み取りが機能しない

これは、Forループの後半で、$iを使用して他のものを繰り返し処理するためですか?しかし、Send()コマンドを実行することさえできません。 AutoItは$i変数を自動的にインクリメントしますか?

For $i = 1 to 64 
    If GUICtrlRead("$Checkbox" & $i,0) = $GUI_CHECKED Then 
     Local $checkboxtext = GUICtrlRead($Checkbox[$i], 1) 
     Local $checkboxtextsplit = StringSplit($checkboxtext, "/") 
     $instanz = $checkboxtextsplit[1] 
     $favorite = "F" & $checkboxtextsplit[2] 
     $position = $checkboxtextsplit[3] 

     ;Select actual Instance from Checkbox Name. 
     If $instanz = "1" Then 
      WinActivate($handle1) 
     Else 
      WinActivate($handle2) 
     EndIf 

     Send("{" & $favorite & "}") 
     ;... 
    EndIf 
Next 
+1

"* AutoItは自動的に$ i変数をインクリメントしますか?*" [はい](https://www.autoitscript.com/autoit3/docs/keywords/For.htm)。 – user4157124

答えて

0

OK、私は今、私はチェックボックスの変数に間違った方法を与えていた。

の代わり:

If GUICtrlRead("$Checkbox" & $i,0) = $GUI_CHECKED Then 
    Local $checkboxtext = GUICtrlRead($Checkbox[$i], 1) 

それは次のようになります。

If GUICtrlRead($Checkbox & $i,0) = $GUI_CHECKED Then 
    Local $checkboxtext = GUICtrlRead($Checkbox & $i, 1) 

実際のチェックボックスがチェックされているかどうかを確認するには:

If GUICtrlRead($Checkbox & $i,0) = $GUI_CHECKED Then ... 

実際のチェックボックスのテキストを読むには:

$checkboxtext = GUICtrlRead($Checkbox & $i, 1) 
関連する問題