注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

信息 灵感 创新

I? =Information,Inspiration,Innovation

 
 
 

日志

 
 
关于我

we are 5. Mathematics, Computation, Programming, Engineering, and Making fun of life.

网易考拉推荐

Inno Setup入门(二十二)——Inno Setup类参考(8)  

2011-03-13 15:18:32|  分类: Inno Setup |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

列表框

       列表框(ListBox)是Windows应用程序中重要的输入手段,其中包括多个选项用户可以从其中选择一个或者多个,程序根据用户的选择做出相应的处理,列表框在外观上和存储框类似,但是行为却有很大的不同,列表框中项一般是预先给定的,而存储框则可以让用户进行输入,并且列表框中的项被选择之后也会触发事件。Pascal脚本中列表框的类由TlistBox实现,其定义如下:

TListBox = class(TCustomListBox)

  property BorderStyle: TBorderStyle; read write;

  property Color: TColor; read write;

  property Font: TFont; read write;

  property MultiSelect: Boolean; read write;

  property Sorted: Boolean; read write;

  property Style: TListBoxStyle; 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;

end;

层次模型如下:

Inno Setup入门(二十二)——Inno Setup类参考(8) - Castor - 趁年轻,多折腾~~

  

下面的代码将演示列表框的使用:

[setup]

AppName=Test

AppVerName=TEST

DefaultDirName="E:\TEST"

AppVersion=1.0

 

[files]

Source:zzz.iss;Flags:dontcopy

 

[code]

var

myPage:TWizardPage;

list:TListBox;

lbl:TLabel;

 

procedure ClickListBox(Sender:TObject);

begin

       lbl.Caption:='你选择的城市是:'+list.Items.Strings[list.ItemIndex]

end;

 

procedure InitializeWizard();

begin

       myPage:=CreateCustomPage(wpWelcome, '标题:自定义页面', '描述:这是我的自定义页面');

       list:=TListBox.Create(myPage);

       list.Parent:=myPage.Surface;

       list.Items.Add('北京');

       list.Items.Add('上海');

       list.Items.Add('香港');

       list.Items.Add('武汉');

       list.Items.Add('广州');

       list.OnClick:=@ClickListBox;

       lbl:=TLabel.Create(myPage);

       lbl.Parent:=myPage.Surface;

       lbl.Top:=list.Top+list.Height+10;

end;

       list.ItemIndex返回列表框中选中项索引值,Items.Strings[list.ItemIndex]则是返回该索引值指代项的字符串值,安装页面如下:

Inno Setup入门(二十二)——Inno Setup类参考(8) - Castor - 趁年轻,多折腾~~

 

       另外,列表框也有MultiSelect选项,表示列表框是否支持多选(在支持的前提下,需要按Ctrl键),但是这种性能并不是太好,个人觉得这个时候还不如用多选框效果更好。

  评论这张
 
阅读(2824)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016