今天说说TNewCheckListBox类。
该类和ListBox差不多,只是下面的项可以用CheckBox或者RadioButton选择,是一种比较复杂的类型。
该类继承自TCustomListBox,自身具有以下属性和函数:
TNewCheckListBox = class(TCustomListBox)
TNewCheckListBox = class(TCustomListBox)
function AddCheckBox(const ACaption, ASubItem: String; ALevel: Byte; AChecked, AEnabled, AHasInternalChildren, ACheckWhenParentChecked: Boolean; AObject: TObject): Integer;
function AddGroup(ACaption, ASubItem: String; ALevel: Byte; AObject: TObject): Integer;
function AddRadioButton(const ACaption, ASubItem: String; ALevel: Byte; AChecked, AEnabled: Boolean; AObject: TObject): Integer;
function CheckItem(const Index: Integer; const AOperation: TCheckItemOperation): Boolean;
property Checked[Index: Integer]: Boolean; read write;
property State[Index: Integer]: TCheckBoxState; read write;
property ItemCaption[Index: Integer]: String; read write;
property ItemEnabled[Index: Integer]: Boolean; read write;
property ItemLevel[Index: Integer]: Byte; read;
property ItemObject[Index: Integer]: TObject; read write;
property ItemSubItem[Index: Integer]: String; read write;
property AllowGrayed: Boolean; read write;
property Flat: Boolean; read write;
property MinItemHeight: Integer; read write;
property Offset: Integer; read write;
property OnClickCheck: TNotifyEvent; read write;
property BorderStyle: TBorderStyle; read write;
property Color: TColor; read write;
property Font: TFont; read write;
property Sorted: Boolean; read write;
property OnClick: TNotifyEvent; read write;
property OnDblClick: TNotifyEvent; read write;
property OnKeyDown: TKeyEvent; read write;
property OnKeyPress: TKeyPressEvent; read write;
property OnKeyUp: TKeyEvent; read write;
property ShowLines: Boolean; read write;
property WantTabs: Boolean; read write;
property RequireRadioSelection: Boolean; read write;
end
测试例子:
[code]
var
myPage:TWizardPage;
clb1, clb2: TNewCheckListBox;
lbl: TLabel;
i,index:Integer;
procedure clbClickCheck(Sender: TObject);
begin
lbl.Caption:='';
for i:=1 to 3 do
if clb1.Checked[i] then
lbl.Caption:=clb1.ItemCaption[i]+' ';
for i:=5 to 7 do
if clb1.Checked[i] then
lbl.Caption:=lbl.Caption+clb1.ItemCaption[i]+' ';
end;
procedure InitializeWizard();
begin
myPage:=CreateCustomPage(wpWelcome, '标题:自定义页面', '描述:这是我的自定义页面');
lbl:=TLabel.Create(myPage);
lbl.Parent:=myPage.Surface;
clb1 := TNewCheckListBox.Create(mypage);
clb1.Width := mypage.SurfaceWidth;
clb1.Top:=20;
clb1.Height := ScaleY(200);
clb1.Flat := True;
clb1.Parent := mypage.Surface;
clb1.AddCheckBox('操作系统', '', 0, True, True, False, True, nil);
clb1.AddRadioButton('Windows 2000', '', 1, False, True, nil);
clb1.AddRadioButton('Windows XP', '', 1, True, True, nil);
clb1.AddRadioButton('Windows 7', '', 1, False, True, nil);
clb1.AddCheckBox('可安装组件', '', 0, True, True, False, True, nil);
clb1.AddCheckBox('组件1', '', 1, True, True, False, True, nil);
clb1.AddCheckBox('组件2', '', 1, True, True, False, True, nil);
clb1.AddCheckBox('组件3', '', 1, False, True, False, True, nil);
clb1.OnClickCheck:=@clbClickCheck;
end;
运行效果如下:
其中的 procedure clbClickCheck将动态地根据所选项进行自动调整。
相关推荐
《InnoSetup入门详解》 InnoSetup是一款广泛使用的安装包制作工具,尤其在Windows平台上,它以其简单易用和高度可定制性深受开发者喜爱。本教程将带你深入理解InnoSetup的基础和高级功能,逐步教你如何制作出专业且...
#### 十九至二十二、Inno Setup类参考 - **基础知识**:深入学习Inno Setup提供的类库及其使用方法。 - **应用场景**: - 实现高级功能。 - 自定义界面。 - 调用API函数。 通过以上知识点的学习,开发者可以熟练...
innosetup安装界面美化: 解压压缩包中的 Inno Setup 5.5.zip,运行Inno Setup 5.5\Inno Setup 5\Compil32.exe,右上角可以改变语言。 打开build.iss文件,一些自定义字段请按需修改,点击Inno Setup工具栏中的 ...
"innosetup-6.2.1.exe"是Inno Setup 6.2.1的主要安装程序文件,用户可以通过运行这个文件来安装或升级Inno Setup的开发环境。这个执行文件可能包含所有必要的组件,如编译器、脚本编辑器和帮助文档,使得用户可以在...
Inno Setup是一个为Microsoft Windows应用程序创建安装程序的工具。innoextract允许在非Windows系统下提取此类安装程序,而无需使用wine运行实际的安装程序。innoextract 目前支持由 Inno Setup 1.2.10 到 6.2.1 ...
### InnoSetup中文帮助知识点详解 #### 一、InnoSetup简介 - **定义**:InnoSetup是一款专为Windows操作系统设计的免费安装程序制作工具。首次发布于1997年,经过多年的持续更新与优化,其在功能性与稳定性方面已...
《Inno Setup中文帮助文档》是学习和掌握Inno Setup的必备参考资料,无论你是初次接触还是有经验的用户,都能从中找到解决问题的方法和优化安装过程的技巧。通过深入阅读和实践,你将能够充分利用Inno Setup的优势,...
**Inno Setup 中文教程** Inno Setup是一款广泛使用的免费安装制作工具,尤其适用于Windows平台。它可以帮助开发者创建自解压安装程序,提供简洁而强大的脚本语言,使得程序的安装、卸载过程更加专业和个性化。这个...
Inno Setup是一款强大的安装制作工具,专为创建Windows应用程序的安装程序而设计。这款软件以其易用性、灵活性和开源特性赢得了广泛的认可。版本5.5.0代表着该软件的一个稳定迭代,为开发者提供了更多定制安装过程的...
它的最新版本是6.0.3,这个压缩包“InnoSetup6.0.3安装包与中文包.rar”包含了该版本的安装程序以及中文语言包,使得国内用户能够方便地使用中文界面进行安装脚本的编写和安装程序的创建。 首先,我们来了解一下...
Inno Setup是一款流行的安装制作工具,它被广泛用于创建Windows应用程序的安装程序。这款软件以其简单易用的界面和强大的功能而闻名。Inno Setup支持创建单文件安装包,自解压程序,以及多语言安装界面,使得开发者...
【标题】"innosetup 仿有道云安装包" 涉及的主要知识点是使用Inno Setup创建类似有道云笔记的安装程序。Inno Setup是一款免费且开源的安装制作工具,常用于创建Windows应用程序的安装包,它允许开发者自定义安装界面...
二、Inno Setup 5的使用流程 1. **安装Inno Setup**:首先,你需要下载并安装Inno Setup 5的编译器,然后就可以开始创建安装脚本了。 2. **编写安装脚本**:使用集成的脚本编辑器,根据项目需求编写安装脚本,包括...
《InnoSetup安装界面美化深度解析》 InnoSetup,一款强大的Windows安装程序制作工具,以其简洁易用的脚本语言和丰富的自定义功能深受开发者喜爱。本资源包"innosetup安装界面美化.zip"专门针对InnoSetup的安装和...
11. **程序图标和启动菜单**:Inno Setup允许设置程序图标,创建启动菜单快捷方式,提升软件的视觉效果。 12. **安装进度条**:提供实时的安装进度反馈,让用户了解安装进度。 通过Inno Setup增强版,用户可以...
Inno Setup是一款流行的安装制作工具,它被广泛用于创建Windows应用程序的安装程序。这款软件以其简单易用的脚本语法和强大的功能集而受到开发者们的青睐。标题中的"Inno Setup 6.1.0中文语言包"指的是Inno Setup的...
Inno Setup是一款流行的安装制作工具,它被广泛用于创建Windows应用程序的安装程序。这款软件以其简单易用的脚本语法和强大的功能集而受到开发者们的青睐。本文将深入探讨Inno Setup 6.1.0及其对应的中文翻译包,...
InnoSetup是一款流行的安装制作工具,它被广泛用于创建Windows应用程序的安装程序。这款软件以其简单易用的脚本语法和强大的功能集而受到开发者们的青睐。标题中的"innosetup安装包+中文语言包"表明我们拥有Inno...
五、Inno Setup脚本资源 为了帮助开发者更好地理解和使用Inno Setup脚本,可以参考Inno Setup的官方文档和在线社区资源。例如,Inno Setup的源代码包含了大量的示例脚本,可以作为学习和调试的参考资料。 六、总结 ...
InnoSetup是一款强大的安装制作工具,它使用脚本语言来编写安装程序,具有灵活的定制性和易用性。本文将详细解析"innosetup脚本范例"中的知识点,帮助你理解如何利用InnoSetup创建自定义安装包。 1. **InnoSetup...