Nsis 如何根据NSD_复选框动态创建NSD_文本?

Nsis 如何根据NSD_复选框动态创建NSD_文本?,nsis,Nsis,我想根据上面复选框的状态,动态地为用户创建一个Textinput 我试过这样的方法: ... Function nsDialogsPage nsDialogs::Create 1018 ${NSD_CreateCheckBox} 20u 55u 50% 20u "Download with Proxy" Pop $testBox ${NSD_OnClick} $testBox button_click nsDialogs::Show Func

我想根据上面复选框的状态,动态地为用户创建一个Textinput

我试过这样的方法:


...

Function nsDialogsPage
     nsDialogs::Create 1018
     ${NSD_CreateCheckBox} 20u 55u 50% 20u "Download with Proxy"
     Pop $testBox
     ${NSD_OnClick} $testBox button_click
     nsDialogs::Show
FunctionEnd

Function button_click
     ${NSD_GetState} $testBox $6
     ${If} $6 == 1
     ${NSD_CreateText} 20u 75u 80% 25p "Enter your Proxy ..."
     ${Else} 
     ;Remove the Text, Set it invisible or do something like this ...
     ${EndIf}
FunctionEnd

Function nsDialogsPageLeave
     ;does something with the input
FunctionEnd 
我没有在上面找到任何东西 我不知道如何删除该框或使其对用户不可见或类似的内容,即当复选框未选中时,用户无法输入任何内容。

查看


+1.我建议从一开始就创建所有必需的对话框元素,并使用
ShowWindow
使可选元素不可见。另外,请检查这个伟大的工具来设计对话框:。谢谢!这正是我想要的!
${NSD_CreateText} 20u 75u 80% 25p "Enter your Proxy ..."
Pop $myText

#disable control
EnableWindow $myText 0

#enable control
EnableWindow $myText 1

#hide control
ShowWindow $myText 0

#show control
ShowWindow $myText 1