您的位置:首页 > 编程语言 > Qt开发

QTreeWidget控件设置某列可编辑

2013-03-06 16:02 856 查看
QTreeWidgetItem 类里面setFlags()函数可以设置整行Item可编辑,无法设置单独某列。

想设置单独某列可编辑,可以利用QTreeWidget提供的SIGNAL itemDoubleClicked() 加上QTreeWidegetItem的setFlags()达到要求

connect(fileFilter,SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)),this,SLOT(EditFileFilter(QTreeWidgetItem*,int)));


void H2000_GUI::EditFileFilter(QTreeWidgetItem* item,int column)
{
if (column==1)    //哪一列需要可编辑,这里是第二列
{
item->setFlags(item->flags()|Qt::ItemIsEditable);
}
else        //当双击的不是第二列的时候将flags中的可编辑属性去掉
{
item->setFlags(item->flags()&~(Qt::ItemIsEditable));
}
}


这样当双击的不是你想要编辑的列的时候item的flags属性就没有可编辑
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: