♣
问一个ListView的Checkboxs的简单问题
listview1的checkboxs=true;
操作中,我对其中某些行勾上;
问:我怎么知道我当前勾上的是那个?
· 网友精彩回答:
take it easy!
int i_count = listview1->items->count;
for (int i=0; i<i_count; i++)
{
if (listview1->selected[i]==true)
//处理此被勾上行...
}
listview1->selected[i]==true
就是列表中某一项被选上了吧
控件数组:
for (int i=0;i<40;i++)
{
if(dynamic_cast<checkbox*>(findcomponent("checkbox"=inttostr(i)))->checked)
//put your code here
}
另一个方法:
int k=this->controlcount;
for( int i=0;i<k;i++)
{
if(this->controls[i]->classnameis("tcheckbox"))
{
tcheckbox* p=dynamic_cast <tcheckbox*> (this->controls[i]);
string strcaption=p->caption;
int benable=p->checked;
if(query1->active) query1->close();
query1->sql->clear();
query1->sql->add("insert into menuenableornot (me_u_id,me_menu_name,me_enable) values ("+labid->caption+","+strcaption+","+benable+")");
query1->execsql();
}
}
急你就不会隔了差不多三天才回复了!
你试试这个事件,自己算坐标吧。还有,listview1的字体大小改变,行宽也会改变的。还要注意,在选择一行后,按空格键也能改变checkboxs状态。
void __fastcall tform1::listview1mousedown(tobject *sender,
tmousebutton button, tshiftstate shift, int x, int y)
- 更多问题:
- · 菜鸟问题:页面的返回问题
- · 求救,高分+资源相送!!
- · 邮件发送附件问题?
- · 怎样合理使用Java开发的WEB程序?
- · 表单上有几个文本域,其中有一个没有连接到数据库,如何在表单提交后,获取该文本域的内容?
- · C#项目怎样生成.exe文件
- · dll间的数据共享?
- · 如:输入搜索关键词,“从事职业”也能搜出“大家好,你从事什么职业”记录,这种是不是用全文检索,急,最好能给代码,再此谢了,希望有
- · 关于hibernate的工具MiddleGen
- · 求助!
- · 打开页面怎么不执行page_load
- · 为什么RS485端口的压差为10V(+,-5V)?
- · 想念山本老师
- · 暴寒
- · 共同研究PB在不同分辩率运行的问题,怎么样自适应分辩率
- · 对MFC生成的文件,应如何分析

