在Qt中,我可以使用combobox->currentText()
方法获取QComboBox
的selected text
。如何获取selected value
我寻找帮助,但是我找不到我期望找到的方法currentData()
。我只能找到combobox->currentIndex()
有没有比combobox->itemData(combobox->currentIndex())
更聪明的方法呢?
更新:从Qt 5开始,这不再是必需的。添加了http://doc.qt.io/qt-5/qcombobox.html#currentData-prop的currentData()
方法
发布于 2010-01-14 00:01:32
如果您想要获取QComboBox的当前数据,似乎需要执行combobox->itemData(combobox->currentIndex())
。
如果您使用的是从QComboBox派生的类,则可以添加currentData()
函数。
发布于 2013-01-21 15:58:36
这个可以获取当前索引的文本:
QString cb = cbChoice ->currentText();
发布于 2010-01-13 21:39:30
您可以为所有项目设置QVariant数据,然后可以在需要时获取该值。
下面是针对这种情况的示例代码:
ui.comboBoxSheetSize->addItem("128 m", QVariant(128));
ui.comboBoxSheetSize->addItem("256 m", QVariant(256));
ui.comboBoxSheetSize->addItem("512 m", QVariant(512));
ui.comboBoxSheetSize->addItem("1024 m", QVariant(1024));
...
void Page::onComboSheetSizeChanged( int index )
{
int value = ui.comboBoxSheetSize->itemData(index).toInt();
}
顺便说一下,我想我误解了你的问题。我觉得你获取数据的方式够聪明了吧?
https://stackoverflow.com/questions/2056915
复制相似问题