一、实现功能:向QTableWidget上添加QCombox
显示效果:双击鼠标才显示Combox组件
如下图所示:未双击效果图
双击效果图:
二、向第二列添加combox代码如下
1 ui.tableWidget_TestItems->verticalHeader()->setVisible(false);//隐藏垂直表头 2 ui.tableWidget_TestItems->setSelectionBehavior(QAbstractItemView::SelectRows);//选择一行 3 setItemIsEditable(ui.tableWidget_TestItems, 0);//禁止表格编辑 4 setItemIsEditable(ui.tableWidget_TestItems, 2); 5 setItemIsEditable(ui.tableWidget_TestItems, 3); 6 ui.tableWidget_TestItems->setItemDelegateForColumn(1, new Delegate(this));//添加QCombox代理
三、封装Delegate类
1 #ifndef DELEGATE_H 2 #define DELEGATE_H 3 4 #include <QStyledItemDelegate> 5 #include <QItemDelegate> 6 #include <QModelIndex> 7 #include <QPainter> 8 #include <QWidget> 9 10 #define COMBOXCOL 1 11 class Delegate : public QItemDelegate 12