new QStandardItem()各类控件初始化方法
时间: 2023-12-15 08:07:37 浏览: 132
在 Qt 中,可以使用 QStandardItem 类来创建各种类型的数据项,并将它们添加到 QStandardItemModel 中。以下是不同类型控件的初始化方法:
1. QLabel:
```cpp
QLabel* label = new QLabel("Label Text");
QStandardItem* item = new QStandardItem();
item->setData(QVariant::fromValue(label), Qt::DisplayRole);
```
2. QLineEdit:
```cpp
QLineEdit* lineEdit = new QLineEdit("Line Edit Text");
QStandardItem* item = new QStandardItem();
item->setData(QVariant::fromValue(lineEdit), Qt::DisplayRole);
```
3. QCheckBox:
```cpp
QCheckBox* checkBox = new QCheckBox("Check Box Text");
QStandardItem* item = new QStandardItem();
item->setData(QVariant::fromValue(checkBox), Qt::DisplayRole);
```
4. QRadioButton:
```cpp
QRadioButton* radioButton = new QRadioButton("Radio Button Text");
QStandardItem* item = new QStandardItem();
item->setData(QVariant::fromValue(radioButton), Qt::DisplayRole);
```
5. QComboBox:
```cpp
QComboBox* comboBox = new QComboBox();
comboBox->addItem("Item 1");
comboBox->addItem("Item 2");
QStandardItem* item = new QStandardItem();
item->setData(QVariant::fromValue(comboBox), Qt::DisplayRole);
```
6. QSpinBox:
```cpp
QSpinBox* spinBox = new QSpinBox();
spinBox->setRange(0, 100);
spinBox->setValue(50);
QStandardItem* item = new QStandardItem();
item->setData(QVariant::fromValue(spinBox), Qt::DisplayRole);
```
7. QDoubleSpinBox:
```cpp
QDoubleSpinBox* doubleSpinBox = new QDoubleSpinBox();
doubleSpinBox->setRange(0.0, 100.0);
doubleSpinBox->setValue(50.0);
QStandardItem* item = new QStandardItem();
item->setData(QVariant::fromValue(doubleSpinBox), Qt::DisplayRole);
```
以上是常用控件的初始化方法,你还可以使用其他控件(如 QPushButton、QPlainTextEdit 等)来创建 QStandardItem。初始化完成后,可以将 QStandardItem 添加到 QStandardItemModel 中,以便在 QTreeView 中显示数据。
阅读全文