Delphi XE2 之 FireMonkey 入门(41) - 控件基础: TListBox
TListBox 的功能在 TCustomListBox 里就完成了.
值得注意的变化是:
1、复选框(相关属性: ShowCheckboxes、TListBoxItem.IsChecked)
2、交替背景(通过继承还可以调整交替的背景色)
3、TListBoxItem 可调整大小、容纳其它对象.
{ TCustomListBox }
public
constructor Create(...); override; //
destructor Destroy; override; //
procedure Assign(...); override; //
procedure Clear; virtual; //清空
function DragChange(...): Boolean; dynamic; //调用 OnDragChange 事件
procedure SelectAll; //全选
procedure ClearSelection; //取消选择
procedure SelectRange(...); //选择指定范围
function ItemByPoint(...): TListBoxItem; //获取指定位置的项
function ItemByIndex(...): TListBoxItem; //获取指定序号的项
procedure Exchange(...); //交换项
procedure AddObject(...); override; //添加项
procedure RemoveObject(...); override; //删除项
procedure Sort(...); override; //排序
property Count: Integer ...; //项总数
property Selected: TListBoxItem ...; //当前选择的项
property Items: TStrings ...; //元素文本的集合
property ListItems[Index: Integer]: TListBoxItem ...; //根据索引获取项
property ItemIndex: Integer ...; //索引
end;
{ TListBox }
published
property StyleLookup; //
property AllowDrag; //是否允许拖放
property CanFocus; //
property DisableFocusEffect; //
property TabOrder; //
property AlternatingRowBackground; //是否使用交替背景
property Columns; //列数; 默认 1
property HideSelectionUnfocused; //在失去焦点时是否隐藏选择
property Items; //
property ItemIndex; //
property ItemWidth; //项宽
property ItemHeight; //项高
property ListStyle; //列表样式; TListStyle = (lsVertical, lsHorizontal);
property MultiSelect; //是否允许多选; 为 True 时, 配合 Ctrl 键多选
property Sorted; //
property ShowCheckboxes; //是否显示复选框; 默认 False
property BindingSource; //绑定源
property OnChange; //有变化时
property OnChangeCheck; //调整复选框时
property OnCompare; //排序比较时
property OnDragChange; //拖放项时
end;
{ TListBoxItem }
public
constructor Create(...); override; //
property Data: TObject ...; //
property Index: Integer ...; //
published
property IsChecked: Boolean ...; //复选值
property IsSelected: Boolean ...; //
property AutoTranslate ...; //
property Font; //
property StyleLookup; //
property Text; //
property TextAlign ...; //
property WordWrap; //
end;
测试:
procedure TForm1.FormCreate(Sender: TObject);
var
i: Integer;
begin
ListBox1.Align := TAlignLayout.alLeft;
ListBox1.ShowCheckboxes := True;
ListBox1.AlternatingRowBackground := True;
for i := to do
begin
ListBox1.Items.Add('Itme' + IntToStr(i));
ListBox1.ListItems[i].IsChecked := Odd(i);
end;
end;
Delphi XE2 之 FireMonkey 入门(41) - 控件基础: TListBox的更多相关文章
- Delphi XE2 之 FireMonkey 入门(44) - 控件基础: TTreeView、TTreeViewItem
Delphi XE2 之 FireMonkey 入门(44) - 控件基础: TTreeView.TTreeViewItem TScrollBox -> TCustomTreeView -> ...
- Delphi XE2 之 FireMonkey 入门(43) - 控件基础: TStringGrid、TGrid
Delphi XE2 之 FireMonkey 入门(43) - 控件基础: TStringGrid.TGrid TStringGrid.TGrid 都是从 TCustomGrid 继承; 区别有:1 ...
- Delphi XE2 之 FireMonkey 入门(42) - 控件基础: TComboBox、TComboEdit
Delphi XE2 之 FireMonkey 入门(42) - 控件基础: TComboBox.TComboEdit TListBox 有两个兄弟 TComboListBox.TComboEditL ...
- Delphi XE2 之 FireMonkey 入门(40) - 控件基础: TMemo
Delphi XE2 之 FireMonkey 入门(40) - 控件基础: TMemo 值得注意的变化: 1.其父类 TScrollBox 的许多特性也很有用处, 如: Memo1.UseSma ...
- Delphi XE2 之 FireMonkey 入门(39) - 控件基础: TScrollBox、TVertScrollBox、TFramedScrollBox、TFramedVertScrollBox
Delphi XE2 之 FireMonkey 入门(39) - 控件基础: TScrollBox.TVertScrollBox.TFramedScrollBox.TFramedVertScrollB ...
- Delphi XE2 之 FireMonkey 入门(38) - 控件基础: TPopupMenu、TMenuItem、TMenuBar、TMainMenu
Delphi XE2 之 FireMonkey 入门(38) - 控件基础: TPopupMenu.TMenuItem.TMenuBar.TMainMenu 相关控件: TMenuBar.TPopup ...
- Delphi XE2 之 FireMonkey 入门(37) - 控件基础: TControl 概览
Delphi XE2 之 FireMonkey 入门(37) - 控件基础: TControl 概览 { TControl } public constructor Create(...); ov ...
- Delphi XE2 之 FireMonkey 入门(36) - 控件基础: TForm
Delphi XE2 之 FireMonkey 入门(36) - 控件基础: TForm 当我第一次读取 Form1.StyleLookup 并期待出现 "formstyle" 时 ...
- Delphi XE2 之 FireMonkey 入门(35) - 控件基础: TFmxObject: 其它
Delphi XE2 之 FireMonkey 入门(35) - 控件基础: TFmxObject: 其它 TFmxObject 增加了 TagObject.TagFloat.TagString, 算 ...
随机推荐
- 77. Combinations (JAVA)
Given two integers n and k, return all possible combinations of k numbers out of 1 ... n. For exampl ...
- ldd - 显示共享库的依赖情况
总览 (SYNOPSIS) ldd [-vVdr] program ... 描述 (DESCRIPTION) ldd 显示 每个 程序 需要 的 共享库 (shared library), 程序名 在 ...
- php正则替换非站内链接 替换zencart描述内的非本站链接
php正则替换非站内链接 <?php //要替换的文本,比如产品描述中的文字 header("content-Type: text/html; charset=utf-8") ...
- Codeforces 911 三循环数覆盖问题 逆序对数结论题 栈操作模拟
A #include <bits/stdc++.h> #define PI acos(-1.0) #define mem(a,b) memset((a),b,sizeof(a)) #def ...
- robotframework 使用Chrome手机模拟器两种方法
Open Google Simulator1 ${device metrics}= Create Dictionary width=${360} height=${640} pixelRatio=${ ...
- docker 部署springboot项目【转载】
https://www.cnblogs.com/ityouknow/p/8599093.html
- 一个web应用的诞生(3)
经过上一章的内容,其实就页面层来说已结可以很轻松的实现功能了,但是很明显美观上还有很大的欠缺,现在有一些很好的前端css框架,如AmazeUI,腾讯的WeUI等等,这里推荐一个和flask集成很好的b ...
- vue2.0 监听滚动 锚点定位
vue中监听滚动的方法其实可以用: // Chrome document.body.scrollTop // Firefox document.documentElement.scrollTop // ...
- 创建一个jFinal项目
最近在做微信开发,于是用到了jfinal. 做一下解释: JFinal 是基于 Java 语言的极速 WEB + ORM 开发框架,其核心设计目标是开发迅速.代码量少.学习简单.功能强大.轻量级.易扩 ...
- CMDB架构需求实现
CMDB资产管理部分实现 需求 1.存储所有IT资产信息 2.数据可手动添加 3.硬件信息可自动收集 4.硬件信息可自动变更 5.可对其他系统灵活开放API 6.API接口安全认证 立业之本:定义表结 ...