前言
接上一章QT实现表格个性化,加入了QPushButton或者QCheckBox或者QComboBox 这些控件但是一直无法显示
一、原因
因为有了代理层,所以不仅需要把Mode层QStandardIteModel添加,还需要代理QSortFilterProxyModel代理层去添加
二、解决方法
对QComboBox 举例如下:
QComboBox *tempComboBox = new QComboBox();
tempComboBox->addItem("good");
tempComboBox->addItem("bad");
/*model添加*/
QStandardIteModel *item = new QStandardIteModel();
m_model.setItem(0, 0, item);
/*代理层*/
tableView->setIndexWidget(m_modelProxy.index(0, 0), tempComboBox);
QT表格控件显示问题及解决方案
本文档主要介绍了在QT编程中遇到的表格控件(如QPushButton、QCheckBox、QComboBox)无法正常显示的问题及其解决方法。问题源于在使用代理层QSortFilterProxyModel时,仅添加了Model层而未处理代理层。解决方法是在添加QComboBox等控件时,不仅要将它们添加到Model,还需在代理层设置IndexWidget,通过示例代码详细展示了如何正确添加并显示QComboBox。
1619

被折叠的 条评论
为什么被折叠?



