演示效果

UI创建

ComboxBox示例
//动态添加项到ComboBox
for (int i=0;i<10 ;i++ ) {
//添加带图标文本数据项
ui->comboBox->
addItem(QIcon(":/res/folder.jpg"),//图标
QStringLiteral("数据项%1").arg(i+1),//显示文本
QVariant(QString("userdata%1").arg(i+1)));//用户关联数据
}
ui->comboBox->addItem("Hello");//添加文本数据项
ui->comboBox->setItemIcon(10,QIcon(":/res/folder.jpg"));//设置项图标
ui->comboBox->setItemText(10,QStringLiteral("修改后的文本"));//设置显示文本
ui->comboBox->setItemData(10,QVariant(QStringLiteral("修改后的数据项")));//设置关联数据项
//删除项
ui->comboBox->removeItem(5);
ui->comboBox->setCurrentIndex(4);//设置默认选中项
for(int i=0;i<ui->comboBox->count();i++){
qDebug()<<QStringLiteral("显示文本:")<<ui->comboBox->itemText(i);
qDebug()<<QStringLiteral("关联数据:")<<ui->comboBox->itemData(i).toString();
}
combobox选择事件处理
void DialogGropuBox::on_comboBox_currentIndexChanged(int index)
{
QMessageBox::information(this,NULL,
QStringLiteral("项索引:%1 显示文本:%2 关联数据:%3 ")
.arg(index)
.arg(ui->comboBox->itemText(index))
.arg(ui->comboBox->itemData(index).toString()));
}

FontComboBox示例
//字体选择事件处理
void DialogGropuBox::on_fontComboBox_currentFontChanged(const QFont &f)
{
ui->label->setFont(f);//设置标签字体
ui->label->setText(ui->fontComboBox->currentText());//显示字体名
}