【发布时间】:2013-10-18 22:13:55
【问题描述】:
我想将 QPushButtons 添加到我的 QTableView。 Qt如何做到这一点?如果我使用 QItemDelegate,是否可以指定哪一列包含按钮?
【问题讨论】:
标签: qt qt4 qtgui qpushbutton
我想将 QPushButtons 添加到我的 QTableView。 Qt如何做到这一点?如果我使用 QItemDelegate,是否可以指定哪一列包含按钮?
【问题讨论】:
标签: qt qt4 qtgui qpushbutton
您必须通过继承 QItemDelegate 来创建自己的 PushButtonDelegate。
QAbstractItemView::setItemDelegateForColumn(int column, QAbstractItemDelegate * delegate) 将为视图的指定列设置您的委托。
委托的实现取决于它所期望的行为。例如。您可以只实现createEditor()、setEditorData() 和setModelData() 以在用户开始编辑单元格时显示按钮,或者您可以通过重新实现委托的paint() 方法来完全改变单元格的外观。
有关详细信息,请参阅this。另请查看 Qt 委托示例。
【讨论】: