QComboBox下拉框放一个QTableWidget后,addItem无效,具体代码如下:
- cbBox = new QComboBox(this);
- cbBox->setStyleSheet("QComboBox{border-image:url(:/image/drive/bgk_combobox.png);color:#003CA6;border:none;}"
- "QComboBox QAbstractItemView{background-color:#FAFAFA; border:2px solid #003CA6; border-radius:5px; color:#003CA6; height:25px;outline: 0px;}"
- "QComboBox QAbstractItemView::item{background-color:#FAFAFA; color:#003CA6; height:25px;}"
- "QComboBox QAbstractItemView::item:hover{background-color:#003CA6; color:white; height:25px;}"
- "QComboBox QAbstractItemView::item:selected{background-color:#003CA6; color:white; height:25px;}"
- "QComboBox::drop-down {border: none;}"
- "QComboBox::down-arrow {image:url(:/res/down_arrow.png);padding: 0 14 0 0;}");
- cbBox->addItem(QString("Values")); //此处在QComboBox上未显示
- QStyledItemDelegate *itemDelegate = new QStyledItemDelegate();
- cbBox->setItemDelegate(itemDelegate);
- cbBox->resize(200, 30);
-
- QTableWidget *tableWidget = new QTableWidget(1,2);
- tableWidget->verticalHeader()->setVisible(false);
- tableWidget->horizontalHeader()->setVisible(false);
- tableWidget->setShowGrid(false);
- for(int i = 0; i < 1; ++i)
- {
- //tableWidget->setRowHeight(i, comboBox->width()/2);
- tableWidget->setColumnWidth(i, cbBox->width()/2);
- for(int j = 0; j < 2; ++j)
- {
- if(j == 0)
- {
- btn1 = new QPushButton;
- btn1->setFixedSize(cbBox->width()/2, cbBox->height());
- btn1->setText(QString("Hex"));
- connect(btn1, &QPushButton::clicked, this, &combobox::onClickedBtn1);
- tableWidget->setCellWidget(i, j, btn1);
- btn1->installEventFilter(this);
- }
- else
- {
- btn2 = new QPushButton;
- btn2->setFixedSize(cbBox->width()/2, cbBox->height());
- btn2->setText(QString("Dec"));
- connect(btn2, &QPushButton::clicked, this, &combobox::onClickedBtn2);
- tableWidget->setCellWidget(i, j, btn2);
- btn2->installEventFilter(this);
- }
- }
- }
- cbBox->setModel(tableWidget->model());
- cbBox->setView(tableWidget);
cbBox明明已经addItem一个项Values了,但是放置tableWidget后,Values却不显示了,请问有什么办法能让QComboBox的默认放着一个项:Values,点击箭头后,会显示以一个以一行两列的单元格,里面左右分别放置这一个按钮的QTableWidget吗?