QComboBox可以随意设置itemData的数值
如图所示:
static enum SchoolStuffType{
SCHOOLMASTER = 3,
DEAN = 5,
TEACHER = 60,
STUDENT = 128,
UNKNOWN = 0xffff
};
需求如下:
在组合框QComboBox控件中添加四条学校职员的类型信息。第一条类型信息校长,第二条类型信息是院长,第三条类型信息是老师,第四条类型信息是学生。而每个类型对应的数值相差比较大,并不是一般的按照从0开始的。因此在我们读写QComboBox类型信息的时候可能会遇到一些问题。
设置QCombox信息的代码片段如下:
(注,需用tr(“”).trimmed,以免出现乱码)
{
ui.comboBox->clear();
ui.comboBox->addItem(tr("校长").trimmed, (int)SCHOOLMASTER);
ui.comboBox->addItem(tr("院长").trimmed, (int)DEAN);
ui.comboBox->addItem(tr("老师").trimmed, (int)TEACHER);
ui.comboBox->addItem(tr("学生").trimmed, (int)STUDENT);
ui.comboBox->setCurrentIndex(1);
}
获取QCombox信息对应的学校职员类型信息代码如下:
{
//获取学校职员类型信息
SchoolStuffType stuffType = (SchoolStuffType)ui.comboBox->itemData(ui.comboBox->currentIndex()).toInt();
//获取对应的字符串类型信息
QString text = ui.comboBox->itemText(ui.comboBox->currentIndex());
}
Qt 获取 combo box 的内容
2010-02-08 08:59:04| 分类: Linux 、windows | 标签: |字号大中小 订阅
1.怎样获取comboBox中的选定项值, 答:currentIndex()
2.如何初始comboBox中的默认项 答:setCurrentIndex()
2.如何初始comboBox中的默认项 答:setCurrentIndex()
要获取下拉框的内容可以通过首先获取下拉框的索引currentIndex()然后通过索引找到索引的内容如下:
ui->position->itemText(ui->position->currentIndex())
QMessageBox::warning(this,"warning","warning", "确定", "取消");
依次序从0 开始,这样的话,“确定”返回0,“取消”返回1
QMessageBox::warning(this,"warning","warning", "确定", "取消");
依次序从0 开始,这样的话,“确定”返回0,“取消”返回1
ui->comBox->insertItem(1,
"abc"
,
"apple"
);
ui->comBox->currentIndex();
//1
ui->comBox->currentText();
//abc
ui->comBox->currentData();
//apple
//可以动态取值
connect(ui->comBox,SIGNAL(currentIndexChanged(
int
)),
this
, SLOT(slotLoadList(
int
)));