我正在尝试通过 nsDialog 创建一个自定义页面,其中带有单选按钮,然后会影响进一步的部分。我遇到的问题是这些值似乎没有传播到函数之外CustomPage
,如下例所示:
Var RADIO_APPLE
Var RADIO_BANANA
Function CustomPage
nsDialogs::Create 1018
${NSD_CreateRadioButton} 0 0 100% 10u "Apple"
Pop $RADIO_APPLE
${NSD_CreateRadioButton} 0 20 100% 10u "Banana"
Pop $RADIO_BANANA
${NSD_Check} $RADIO_APPLE
nsDialogs::Show
${NSD_GetState} $RADIO_APPLE $0
${NSD_GetState} $RADIO_BANANA $1
MessageBox MB_OK "Apple $0 Banana $1"
FunctionEnd
Section "-CustomSection"
${NSD_GetState} $RADIO_APPLE $0
${NSD_GetState} $RADIO_BANANA $1
MessageBox MB_OK "Apple $0 Banana $1"
SectionEnd
这显然是一个要点,忽略了包含和其他页面,但是当我构建完整版本时,我看到了
Apple 1 Banana 0
在里面提出的消息框上CustomPage
,但请参阅
Apple 0 Banana 0
当该部分运行时。
我已经阅读了https://nsis.sourceforge.io/NsDialogs_FAQ#How_to_easily_handle_radiobutton_selections,这个解决方案给了我同样的结果。
我$RADIO_*
在该部分中是否缺少某些内容?
谢谢