zoukankan      html  css  js  c++  java
  • Inno Setup入门(二十二)——Inno Setup类参考(8)

    列表框

           列表框(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键),但是这种性能并不是太好,个人觉得这个时候还不如用多选框效果更好。

    转自:http://www.360doc.com/content/13/0327/14/4221543_274239746.shtml

  • 相关阅读:
    deepin15.11安装Oracle JDK
    API文档-BASE-BASE
    miniui控件的el属性(自动生成的标签)
    miniui从继承看控件处理
    miniui中的继承
    miniui加载(二)
    miniui 加载文件时会做的一些事情
    二、运行盛派的Demo(看下效果)
    一、选择云服务器和测试微信公众号Token
    绘制圆角(2)
  • 原文地址:https://www.cnblogs.com/xiurui12345/p/3096598.html
Copyright © 2011-2022 走看看