Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
NSIS对话中的两个无线电小组_Nsis_Radio Group - Fatal编程技术网

NSIS对话中的两个无线电小组

NSIS对话中的两个无线电小组,nsis,radio-group,Nsis,Radio Group,我在NSIS安装程序中有一个对话页面,我希望在该页面上有2个单选按钮组,每组有3个单选按钮 Function settingsTypePageCreate nsDialogs::Create 1018 pop $0 ; Radio Group 1 ${NSD_CreateGroupBox} 0 0 100% 40u "Select Method for specifying file locations" Pop $1 ${NSD_CreateRa

我在NSIS安装程序中有一个对话页面,我希望在该页面上有2个单选按钮组,每组有3个单选按钮

Function settingsTypePageCreate
   nsDialogs::Create 1018
   pop $0

   ; Radio Group 1

   ${NSD_CreateGroupBox} 0 0 100% 40u "Select Method for specifying file locations"    
   Pop $1
   ${NSD_CreateRadioButton} 0 10% 100% 15u "Use Environment Variable."
   pop $2
   ${NSD_CreateRadioButton} 0 25% 100% 15u "Use central config file."
   pop $3
   ${NSD_CreateRadioButton} 0 40% 100% 15u "Use default %USERPROFILE%."
   pop $4

   ; Radio Group 2

   ${NSD_CreateGroupBox} 0 60% 100% 40u "Select location folder"    
   Pop $5
   ${NSD_CreateRadioButton} 0 70% 100% 15u "%APPDATA%"
   pop $6
   ${NSD_CreateRadioButton} 0 80% 100% 15u "%USERPROFILE%"
   pop $7
   ${NSD_CreateRadioButton} 0 90% 100% 15u "PROGRAMDATA"
   pop $8

   nsDialogs::Show
FunctionEnd
每个组都是独立的,需要在两个组中进行选择

我有下面的代码,它显示了创建2个组,每个组有3个按钮,但是当安装程序运行时,所有6个按钮都被分组为1个组,这意味着我只能从6个按钮中选择1个,而不是从每个组的3个按钮中选择1个

Function settingsTypePageCreate
   nsDialogs::Create 1018
   pop $0

   ; Radio Group 1

   ${NSD_CreateGroupBox} 0 0 100% 40u "Select Method for specifying file locations"    
   Pop $1
   ${NSD_CreateRadioButton} 0 10% 100% 15u "Use Environment Variable."
   pop $2
   ${NSD_CreateRadioButton} 0 25% 100% 15u "Use central config file."
   pop $3
   ${NSD_CreateRadioButton} 0 40% 100% 15u "Use default %USERPROFILE%."
   pop $4

   ; Radio Group 2

   ${NSD_CreateGroupBox} 0 60% 100% 40u "Select location folder"    
   Pop $5
   ${NSD_CreateRadioButton} 0 70% 100% 15u "%APPDATA%"
   pop $6
   ${NSD_CreateRadioButton} 0 80% 100% 15u "%USERPROFILE%"
   pop $7
   ${NSD_CreateRadioButton} 0 90% 100% 15u "PROGRAMDATA"
   pop $8

   nsDialogs::Show
FunctionEnd

此外,我在任何地方都找不到NSD_的位置和大小参数如何创建的描述。我必须通过反复试验来完成。

使用
WS\u组
样式来创建分组控件:

用户可以使用箭头键从一个控件移动到下一个控件。在第一个控件之后使用
WS_组
style FALSE定义的所有控件都属于同一组。具有
WS_GROUP
样式的下一个控件启动下一个组(即,一个组在下一个组开始的地方结束)

测量结果如以下所述:

宏进行的每个测量都可以使用三种单位类型中的一种——像素或对话框大小的百分比。它也可以是负数,表示应从末端开始测量。要使用对话单位,测量值必须以字母u作为后缀。要使用百分比,度量值必须以百分号-%作为后缀。任何其他后缀或无后缀表示像素

对话框单元允许在使用不同字体或DPI时创建缩放良好的对话框。其像素大小在运行时根据字体和DPI确定