TListView能够实现让用户只能勾选一项吗?请问如何实现?

ZQGet 2005-01-24 05:06:09
TCheckListBox有一个OnClickCheck事件,我只要在这个事件里使用如下语句就能够限制用户每次只选一项
int index=CheckListBox1->ItemIndex;
//如果该项为真就将其它项为假
if (CheckListBox1->Checked[index])
{
for (int i=0;i<CheckListBox1->Items->Count;i++)
{
if (i==index)
{
continue;
}
CheckListBox1->Checked[i]=false;
}
}

我的问题是当TListView的CheckBoxes为true和ViewStyle为vsReport时,如何实现类似上面的功能?
...全文
131 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
sinlo 2005-01-26
  • 打赏
  • 举报
回复
下面代码是正确的,自己看看了
TListItem *pItem;
int index=pItem->Index();
//如果该项为真就将其它项为假
if (index)
{
for (int i=0;i<TListView->Items->Count;i++)
{
if (i==index)
{
continue;
}
pItem->Checked=false;
}
}
僵哥 2005-01-25
  • 打赏
  • 举报
回复
void __fastcall TForm1::ListView1Changing(TObject *Sender, TListItem *Item,
TItemChange Change, bool &AllowChange)
{

if(Change==ctState)
{
//Do Something
}

}
ZQGet 2005-01-24
  • 打赏
  • 举报
回复
我不是很清楚你的意思,你能给我具体一点吗,谢谢?
Joininthefun 2005-01-24
  • 打赏
  • 举报
回复
你可以先在click中处理然后在DrawItem事件中处理,把imagelist中的图标换了即可呀,

604

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder VCL组件使用和开发
社区管理员
  • VCL组件使用和开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧