當您使用if
語句沒有大括號,只有下面的行由if語句讀取。
這意味着,當你這樣做:
If Open = 1
Run "X:\SSC_HR\SENS\Bedrijfsbureau"
Return
...程序結束。 if語句執行運行命令,return
無論如何都會被處理。
所以,試試這個,而是,如果你想多行:
If(Open = 1){
Run "X:\SSC_HR\SENS\Bedrijfsbureau"
Return
}
而且,什麼都不會發生呢!首先,當您選中該框時,您沒有子處理複選框。換句話說,當你點擊複選框時,什麼都不應該發生。所以,我想你只是想在按下「Go」按鈕時發生事情。
這很棒,但你的按鈕有兩件事:它抓取複選框的值,然後退出GUI ---->這就是你的程序無法工作的原因。
你想這樣做,而不是:
Gui, Add, Checkbox, vOpen, Open Bedrijfsbureau
Gui, Add, Checkbox, vOpen2, Open
Gui, Add, Button, Default gButtonGo, Go
Gui, Show, w500 h300, Products
Return
ButtonGo:
;fetch the value of the checkbox variables
Gui, Submit
If Open = 1
Run "X:\SSC_HR\SENS\Bedrijfsbureau"
If Open2 = 1
Run "X:\SSC_HR\SENS\Bedrijfsbureau\Dimensioneren"
;Now, if you want the gui to close after the actions are complete, then uncomment the next line - if you want the gui to remain, then don't uncomment it.
;Gui, Destroy
RETURN
GUIClose:
Gui, Destroy
最後,在這種情況下,你可以執行一個或兩個複選框的命令。如果您只需要一個或另一個,則應該使用單選按鈕。
熱鍵的運行主要功能:
#x::
gosub, ButtonGo
return
如果你想熱鍵打開GUI,那麼你需要用的GUI在GOSUB和更改熱鍵的命令。
BGM,真棒。謝謝!還有一個問題,如果我想用快捷方式運行此程序,應該添加什麼?我試着在它前面添加::#x,但那不起作用 – user181796
好吧,你已經得到了命令 - 你應該閱讀熱鍵的文檔,你知道。我會將它添加到你的答案中。 – bgmCoder