チェックボックス/ラジオボタン/コンボボックスをQTableWidgetまたはQListWidgetに追加するにはどうすればよいですか?
51918 次
3 に答える
60
次の 2 つの方法があります。
void QTableWidget::setCellWidget(int row, int column, QWidget* widget)
と
void QListWidget::setItemWidget(QListWidgetItem* item, QWidget* widget)
QWidget を継承するウィジェットやその他のコントロールを挿入できます。チェックボックス/ラジオボタン/コンボボックスはから継承しQWidget
ます。
于 2011-03-20T17:16:06.077 に答える
22
項目のsetCheckStateメソッドを使用するチェックボックスの場合、リスト ウィジェットとテーブル ウィジェットの両方に必要なことを行う必要があります。以下のコードが機能するかどうかを確認してください。
リスト ウィジェット:
QListWidgetItem *item0 = new QListWidgetItem(tr("First"), listWidget);
QListWidgetItem *item1 = new QListWidgetItem(tr("Second"), listWidget);
item0->setCheckState(Qt::Unchecked);
item1->setCheckState(Qt::Checked);
テーブル ウィジェット:
QTableWidgetItem *item2 = new QTableWidgetItem("Item2");
item2->setCheckState(Qt::Checked);
tableWidget->setItem(0, 0, item2);
他のタイプのエディターのウィジェットにデリゲート ( QItemDelegate ) を使用できます。例は次のとおりです: Spin Box Delegate Example。
これが役立つことを願っています。
于 2011-03-20T22:57:18.797 に答える