Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ QTableWidget中的星形委托_C++_Qt - Fatal编程技术网

C++ QTableWidget中的星形委托

C++ QTableWidget中的星形委托,c++,qt,C++,Qt,我从示例中复制了stardelegate、stareditor和starting源文件和头文件,并尝试将星级功能实现到树小部件中,而不是像示例中那样的表小部件中。星星正在显示,问题是它们不能像前面的例子那样编辑,事实上是整行。导致此问题的代码: ui->tree->setItemDelegate(new StarDelegate); ui->tree->setItemDelegateForColumn(2, new StarDelegate); ui->tree-&

我从示例中复制了stardelegate、stareditor和starting源文件和头文件,并尝试将星级功能实现到树小部件中,而不是像示例中那样的表小部件中。星星正在显示,问题是它们不能像前面的例子那样编辑,事实上是整行。导致此问题的代码:

ui->tree->setItemDelegate(new StarDelegate);
ui->tree->setItemDelegateForColumn(2, new StarDelegate);
ui->tree->setEditTriggers(QAbstractItemView::DoubleClicked | QAbstractItemView::SelectedClicked);
ui->tree->setSelectionBehavior(QAbstractItemView::SelectRows);
ui->tree->setColumnCount(3);
ui->tree->setHeaderLabels(QStringList() << "Name" << "Date" << "Rating");
ui->tree->setItemDelegate(新的StarDelegate);
ui->tree->setItemDelegateForColumn(2,new StarDelegate);
ui->tree->setEditTriggers(QAbstractItemView::DoubleClicked | QAbstractItemView::SelectedClicked);
ui->tree->setSelectionBehavior(QAbstractItemView::SelectRows);
ui->tree->setColumnCount(3);

ui->tree->setHeaderLabels(QStringList()
QTableWidget
默认情况下项目可编辑,
QTreeWidget
项目不可编辑


您必须将标志
Qt::ItemIsEditable
添加到评级列中所有项目的现有标志中。

QTableWidget
项目默认可编辑,
QTreeWidget
项目不可编辑

您必须将标志
Qt::ItemIsEditable
添加到评级列中所有项目的现有标志中