我如何在TCheckListBox上使用多个列?

时间:2010-02-10 16:17:39

标签: delphi tchecklistbox

我正在使用TcheckListBox控件并希望在此使用第二列,但除了Columns和Header属性之外,我找不到插入多列内容的任何来源......

它可能看起来像一个noobie问题,但Delphi的帮助没有任何内容,我的搜索(在Google和SO上)带来了很多垃圾...

我只需要一个例子。

2 个答案:

答案 0 :(得分:20)

使用TCheckListBox无法做到这一点。

但你可以使用TListView

ViewStyle属性设置为vsReport,将Checkboxes设置为True


要创建列并添加项目:

procedure TFormMain.Button1Click(Sender: TObject);
var
  Item1, Item2: TListItem;
begin
  ListView1.Columns.Add.Caption := 'aa';
  ListView1.Columns.Add.Caption := 'bb';

  Item1 := ListView1.Items.Add;
  Item1.Caption := 'item1';
  Item1.SubItems.Add('subitem1');

  Item2 := ListView1.Items.Add;
  Item2.Caption := 'item2';
  Item2.SubItems.Add('subitem2');
  Item2.Checked := True;
end;


看起来像:

list view with checkboxes http://img638.imageshack.us/img638/4681/clipboard01y.png

答案 1 :(得分:9)

我可能错了,但我认为列是用于包装而不是用于格式化。

例如

将列数设置为2 添加3或4个项目 垂直调整框的大小,您将看到项目流以填充列