NSIS RadioButton 如何分组
NSIS RadioButton How to group
NSIS界面配置文件ini中有多个RadioButton控件,如何对它们进行分组,使用group属性?这个属性如何设置值?怎么写?帮帮我!
Install Options documentation中说的很对:
群组:
Add this flag to the first control of a group of controls to group them. Grouping controls allows you to create multiple groups of radio button and makes keyboard navigation using arrow keys easier.
NOTABSTOP:
Do not stop on the control when the user pressed the Tab key. Add NOTABSTOP to all controls of a group except the first one to allow navigation between groups with the Tab key.
RequestExecutionLevel User
OutFile "test.exe"
Function .onInit
; Writing out the .ini manually here to keep the example in one source file
InitPluginsDir
WriteIniStr "$PluginsDir\MyPage.ini" Settings NumFields 4
WriteIniStr "$PluginsDir\MyPage.ini" "Field 1" Type RadioButton
WriteIniStr "$PluginsDir\MyPage.ini" "Field 1" Text G1:Radio1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 1" Flags GROUP
WriteIniStr "$PluginsDir\MyPage.ini" "Field 1" State 1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 1" Left 1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 1" Right -1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 1" Top 0
WriteIniStr "$PluginsDir\MyPage.ini" "Field 1" Bottom 10
WriteIniStr "$PluginsDir\MyPage.ini" "Field 2" Type RadioButton
WriteIniStr "$PluginsDir\MyPage.ini" "Field 2" Text G1:Radio2
WriteIniStr "$PluginsDir\MyPage.ini" "Field 2" Flags NOTABSTOP
WriteIniStr "$PluginsDir\MyPage.ini" "Field 2" Left 1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 2" Right -1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 2" Top 10
WriteIniStr "$PluginsDir\MyPage.ini" "Field 2" Bottom 20
WriteIniStr "$PluginsDir\MyPage.ini" "Field 3" Type RadioButton
WriteIniStr "$PluginsDir\MyPage.ini" "Field 3" Text G2:Radio1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 3" Flags GROUP
WriteIniStr "$PluginsDir\MyPage.ini" "Field 3" Left 1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 3" Right -1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 3" Top 50
WriteIniStr "$PluginsDir\MyPage.ini" "Field 3" Bottom 60
WriteIniStr "$PluginsDir\MyPage.ini" "Field 4" Type RadioButton
WriteIniStr "$PluginsDir\MyPage.ini" "Field 4" Text G2:Radio2
WriteIniStr "$PluginsDir\MyPage.ini" "Field 4" Flags NOTABSTOP
WriteIniStr "$PluginsDir\MyPage.ini" "Field 4" State 1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 4" Left 1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 4" Right -1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 4" Top 60
WriteIniStr "$PluginsDir\MyPage.ini" "Field 4" Bottom 70
FunctionEnd
Section
SectionEnd
Page Custom MyPage
Page InstFiles
Function MyPage
InstallOptions::dialog "$PluginsDir\MyPage.ini"
Pop [=10=]
FunctionEnd
NSIS界面配置文件ini中有多个RadioButton控件,如何对它们进行分组,使用group属性?这个属性如何设置值?怎么写?帮帮我!
Install Options documentation中说的很对:
群组:
Add this flag to the first control of a group of controls to group them. Grouping controls allows you to create multiple groups of radio button and makes keyboard navigation using arrow keys easier.
NOTABSTOP:
Do not stop on the control when the user pressed the Tab key. Add NOTABSTOP to all controls of a group except the first one to allow navigation between groups with the Tab key.
RequestExecutionLevel User
OutFile "test.exe"
Function .onInit
; Writing out the .ini manually here to keep the example in one source file
InitPluginsDir
WriteIniStr "$PluginsDir\MyPage.ini" Settings NumFields 4
WriteIniStr "$PluginsDir\MyPage.ini" "Field 1" Type RadioButton
WriteIniStr "$PluginsDir\MyPage.ini" "Field 1" Text G1:Radio1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 1" Flags GROUP
WriteIniStr "$PluginsDir\MyPage.ini" "Field 1" State 1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 1" Left 1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 1" Right -1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 1" Top 0
WriteIniStr "$PluginsDir\MyPage.ini" "Field 1" Bottom 10
WriteIniStr "$PluginsDir\MyPage.ini" "Field 2" Type RadioButton
WriteIniStr "$PluginsDir\MyPage.ini" "Field 2" Text G1:Radio2
WriteIniStr "$PluginsDir\MyPage.ini" "Field 2" Flags NOTABSTOP
WriteIniStr "$PluginsDir\MyPage.ini" "Field 2" Left 1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 2" Right -1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 2" Top 10
WriteIniStr "$PluginsDir\MyPage.ini" "Field 2" Bottom 20
WriteIniStr "$PluginsDir\MyPage.ini" "Field 3" Type RadioButton
WriteIniStr "$PluginsDir\MyPage.ini" "Field 3" Text G2:Radio1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 3" Flags GROUP
WriteIniStr "$PluginsDir\MyPage.ini" "Field 3" Left 1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 3" Right -1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 3" Top 50
WriteIniStr "$PluginsDir\MyPage.ini" "Field 3" Bottom 60
WriteIniStr "$PluginsDir\MyPage.ini" "Field 4" Type RadioButton
WriteIniStr "$PluginsDir\MyPage.ini" "Field 4" Text G2:Radio2
WriteIniStr "$PluginsDir\MyPage.ini" "Field 4" Flags NOTABSTOP
WriteIniStr "$PluginsDir\MyPage.ini" "Field 4" State 1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 4" Left 1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 4" Right -1
WriteIniStr "$PluginsDir\MyPage.ini" "Field 4" Top 60
WriteIniStr "$PluginsDir\MyPage.ini" "Field 4" Bottom 70
FunctionEnd
Section
SectionEnd
Page Custom MyPage
Page InstFiles
Function MyPage
InstallOptions::dialog "$PluginsDir\MyPage.ini"
Pop [=10=]
FunctionEnd