qtablewidget加入QcomboBox控件如何读取内容
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了qtablewidget加入QcomboBox控件如何读取内容相关的知识,希望对你有一定的参考价值。
我在QTableWidget的单元格里添加了QComboBox控件,QComboBox里的内容是自己添加进去的,我用什么方法可以获得QComboBox里的内容?高手指点一下,查了很多没有一个能实现的;
参考技术A QWidget * widget=ui->tableWidget->cellWidget(i,0);//获得widgetQComboBox *combox=(QComboBox*)widget;//强制转化为QComboBox
QString string=combox->currentText();
qDebug()<<string;追问
非常感谢,方法不错;
追答不用客气,能帮到你很荣幸。
本回答被提问者采纳 参考技术B 用QComboBox的getCurrentText(或getCurrentIndex)属性追问我的QComboBox是放在QTableWidget里的,我必须从QTableWidget里读,比如ui->tableWidget->item(0, 0)->data(Qt::DisplayRole).toString();这是读取单元格里的内容,我要读QComboBox里的内容;
追答你用什么函数把QComboBox放进单元格的?
如果放进单元格的是QComboBox,那么从单元格中读出的就是QComboBox。
我是这样把QComboBox放在QTableWidget里的,代码如下:
QComboBox *pComboBox = new QComboBox();
pComboBox->addItem("a");
pComboBox->addItem("b");
ui->tableWidget->setCellWidget(i, 1, pComboBox );这样QComboBox里就被放置了“a”和“b”;
我要怎么才能获取到a或者b;
tableWidget->setCellWidget(row,col,combobox); combobox->setCurrentIndex(0);
connect(combobox, SIGNAL(currentIndexChanged(int)),this, SLOT(changed(int)));
changed(int index) 槽函数
QComboBox* combo=(QComboBox*)table->cellWidget(_row,_col);
combo->currentIndex();
非常感谢,但是最后的我还是没弄出来,不过现在弄好了,其他人的方法,
QWidget * widget=ui->tableWidget->cellWidget(i,0);//获得widget
QComboBox *combox=(QComboBox*)widget;//强制转化为QComboBox
QString string=combox->currentText();
qDebug()<<string;
以上是关于qtablewidget加入QcomboBox控件如何读取内容的主要内容,如果未能解决你的问题,请参考以下文章
如何从 QComboBox 中获取所选项目以显示在 PyQt5 的 QTableWidget 中? (QComboBox 有复选框来选择项目)
如何在一个QTableWidget对象中将某一列单元格设置成QComboBox
QTableWidget 能不能在一个单元格内加入多个控件?