把listview的viewstyle设置成vsreport,checked属性置为true;
我现在想只能同时有一个checkbox被选中(就是只能选择一个ITEM),其实就是Radio的功能,该怎么做呢?

解决方案 »

  1.   

    procedure TForm1.ListView1Changing(Sender: TObject; Item: TListItem;
      Change: TItemChange; var AllowChange: Boolean);
    var
      i: Integer;
    begin
      for i := 0 to ListView1.Items.Count - 1 do
        ListView1.Items[i].Checked := False;
    end;
      

  2.   

    老兄不好意思,这样不行啊。
    我没说清楚,我这个LISTview是放在Pagecontrel中的,要经常切换tabsheet.
    在切换的时候LISTview中的数据会触发从数据库中更新(根据会根据前一个sheet中选定的人取本sheet中listview对应的数据),切换以后才可以更改对应的数据(打勾),但只能对应一类数据,不让多打勾。
    如果是Change事件,在切换的时候就会触发,就乱了
      

  3.   

    不要用CheckBox,
    直接将ListView设置为
    HideSelection := False;
    MultiSelect   := False;
    RowSelect     := True;
    ReadOnly      := True;ListView1.Selected.Caption根据单选可以选定。