Qt中QTableView/QTreeView/QListView添加QWidget

前言 最近的项目开发中,需要用到在QTableView的item中,添加一个QWidget,在QWidget中 […]

前言

最近的项目开发中,需要用到在QTableView的item中,添加一个QWidget,在QWidget中放一些按钮。如下图所示。

实现方法

QWidget *optWgt = new QWidget(this);
QHBoxLayout *hBoxLayout = new QHBoxLayout(optWgt);
QStringList optBtnTexts;
optBtnTexts << QStringLiteral("开机") << QStringLiteral("关机") << QStringLiteral("远程");
for(int oIdx = 0; oIdx < optBtnTexts.length(); ++oIdx)
{
    QPushButton *btn = new QPushButton(optBtnTexts.at(oIdx));
    hBoxLayout->addWidget(btn);
}
optWgt->setLayout(hBoxLayout);
hBoxLayout->setMargin(0);

QModelIndex index = m_pModel->index(rIdx, 4);
ui->tableView->setIndexWidget( index, optWgt);

 

 

版权声明
文章标题:Qt中QTableView/QTreeView/QListView添加QWidget
文章链接:https://blog.chiyuba.com/houduanjishu/qt/50.html
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,转载或引用请注明出处。
温馨提示:本文最后更新于 2021年4月21日,部分内容可能存在时效性,请注意甄别。

相关推荐

更多教程
Q_INVOKABLE在QML中的使用 Qt Q_INVOKABLE在QML中的使用

前言 由于我对QML了解不是太多,一位大...

17 浏览
Qt4、Qt5和Qt6各个版本如何选择 Qt Qt4、Qt5和Qt6各个版本如何选择

特殊版本 嵌入式推荐用 Qt4.8,打包...

143 浏览
ubuntu下Qt报错“could not find a Qt installation of ” Qt ubuntu下Qt报错“could not find a Qt installation of ”

前言 这两天想在ubuntu中使用Qt跑...

34 浏览

评论