2

我有一个组合框,我称之为如下:

QComboBox *comboBox_test ;
comboBox_test = new QComboBox(this);
comboBox_test ->setGeometry(QRect(10, 10, 50, 20));
comboBox_test ->insertItems(0, QStringList() << "A" << "B");

我想做的是将“B”设置为默认值。

我没有找到添加允许我这样做的行代码的方法。

4

2 回答 2

6

鉴于您提供的示例,您有两种选择。如果您知道索引,您可以直接使用setCurrentIndex() ,或者先使用findText检索索引

因此,最初您可以使用

comboBox_test->setCurrentIndex(1);

稍后如果您想在屏幕上重置为“B”

int index = comboBox_test->findText("B"); //use default exact match
if(index >= 0) 
     comboBox_test->setCurrentIndex(index);
于 2013-05-07T15:55:21.363 回答
0

这是调用 setCurrentText() 而不是 setCurrentIndex() 的更简单方法

comboBox_test->findText("B");

你可以只用一行!这是安全的,如果列表中不存在“B”,则不会发生任何事情。

于 2013-12-24T20:54:14.197 回答