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, 算 ...
随机推荐
- Java中遍历Set集合的方法
对 set 的遍历 1.迭代遍历: Set<String> set = new HashSet<String>(); Iterator<String> it = s ...
- poj 1915 KnightMoves(bfs)
Knight Moves Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 24094 Accepted: 11364 De ...
- 如何修改Git已提交的日志
情况一:最后一次提交且未push 执行以下命令: git commit --amend git会打开$EDITOR编辑器,它会加载这次提交的日志,这样我们就可以在上面编辑,编辑后保存即完成此次的修改. ...
- 爬虫笔记八——Scrapy实战项目
(案例一)手机App抓包爬虫 1. items.py import scrapy class DouyuspiderItem(scrapy.Item): # 存储照片的名字 nickName = sc ...
- apache 部署
<VirtualHost *:80> ServerAdmin webmaster@dummy-host.localhost DocumentRoot "D:/EmpireServ ...
- Big Data(七)MapReduce计算框架(PPT截图)
一.为什么叫MapReduce? Map是以一条记录为单位映射 Reduce是分组计算
- html头部和底部固定时,中间的内容随屏幕分别率铺满页面
html页面头部和底部有东西时,怎么让内容填充到中间的页面,且去适应不同的电脑分辨率,看代码 <!DOCTYPE html> <html> <head> <m ...
- iOS给UIView添加点击事件
我要给一个UIView对象topView添加点击事件,方法如下: 步骤1:创建手势响应函数 (void)event:(UITapGestureRecognizer *)gesture { //处理事件 ...
- shell练习--PAT题目1003:我要通过!(成功案例)
“答案正确”是自动判题系统给出的最令人欢喜的回复.本题属于 PAT 的“答案正确”大派送 —— 只要读入的字符串满足下列条件,系统就输出“答案正确”,否则输出“答案错误”. 得到“答案正确”的条件是: ...
- 查看SSL证书的别名
1.把java目录下的keytool拷贝到证书目录下:2.进入证书目录,然后输入命令keytool -list -v -keystore file.jks -storepass password,发现 ...