c++ QTQStandardItem 上创建QRadioButton
时间: 2024-03-05 07:47:56 浏览: 94
您可以使用 QStandardItemModel 类创建一个带有单选按钮的 QStandardItem。以下是一个简单的示例代码:
```cpp
#include <QStandardItemModel>
#include <QStandardItem>
#include <QRadioButton>
// 创建一个 QStandardItemModel 对象
QStandardItemModel *model = new QStandardItemModel();
// 创建一个带有单选按钮的 QStandardItem
QStandardItem *item = new QStandardItem();
QRadioButton *radioButton = new QRadioButton();
item->setCheckable(true);
item->setCheckState(Qt::Unchecked);
item->setFlags(item->flags() ^ Qt::ItemIsUserCheckable);
item->setData(QVariant::fromValue((void*)radioButton), Qt::UserRole);
// 将该项添加到模型中
model->appendRow(item);
```
在上面的代码中,我们创建了一个 QStandardItemModel 对象,然后创建了一个 QStandardItem,该项包含一个单选按钮。我们将该项添加到模型中,然后可以将模型与其他 Qt 控件(例如 QTreeView 或 QListView)一起使用。注意,C++ 中的 QVariant 类型用来包装任意类型的数据,这里我们使用它来包装指向 QRadioButton 对象的指针。
阅读全文