我想创建一个qt组合框,其中包含多个包含按钮和QLabel的列。如果我查看QSpinBox编辑器示例,则只为一个QSpinBox控件设置编辑器。我们可以创建一个复杂的控件,比如这个并处理事件吗?
你有什么指针吗?
答案 0 :(得分:1)
QCombobox内部有一个abstractitemview可以通过以下方式访问:
QAbstractItemView * QComboBox::view () const
获得指向此视图的指针后,您可以为此视图定义自己的委托。此视图绘制弹出窗口。
QAbstractItemView
可以拥有自定义委托,可以是QLabel
或您喜欢的任何按钮。
此外,您可能希望在查看弹出窗口时使用此调用使委托显示自己:
openPersistentEditor ( const QModelIndex & index )
这是一个演示项目QCombobox with button and spinbox,正是你所要求的。