qt级联combo box

本文介绍如何在Qt环境中创建级联ComboBox,使得二级ComboBox的内容根据一级ComboBox的选择动态变化。通过将数据读入动态数组并利用addItem方法填充ComboBox,同时实现当前Index变化时更新二级ComboBox的功能。该实现涉及Qt的comboBox_currentIndexChanged信号与槽机制。
摘要由CSDN通过智能技术生成

比如要把以下的内容转到combo box里,一级combo box显示Quality, BedNum, BedType, Internet这四项,二级combo box只有两项,根据一级combo box里选中的条目,动态匹配:如一级下拉列表选中的是BedNum,那二级下拉列表里的选项就是Two,One

Quality={High,Low}

BedNum={Two,One}

BedType={King,Queen}

Internet={Yes,No}


没有找到官方的做法,我的做法是先把这些数据读到动态数组里,AttrNum表示属性条数,这里是4,动态数组QString attrName[AttrNum][3]里存这些单词。其中attrName[AttrNum][0]存的是一级combo box的内容,attrName[AttrNum][1]和attrName[AttrNum][2]存的是二级combo box的内容。这些准备工作都做好后,就可以开始了

先把一级combo box的内容放进comboBox控件里,这个简单,可以用addItem或addItems.

for(int i=0;i<AttrNum;i++)
        ui->comboBox->addItem(attrName[i][0]);


再把二级combo box的内容放进comboBox_2控件里:

void FormulaDialog::on_comboBox_currentIndexChanged(int index)
{
    ui->comboBox_2->clear();

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值