0

例http://doc.qt.io/qt-5/qtwidgets-itemviews-stardelegate-example.htmlから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");

私が間違っていることを教えてください、ありがとう。

4

1 に答える 1

3

QTableWidgetアイテムはデフォルトで編集可能ですが、編集可能でQTreeWidgetはありません。

Qt::ItemIsEditable評価列のすべてのアイテムの既存のフラグにフラグを追加する必要があります。

于 2012-06-17T00:23:58.330 に答える