QT自学笔记(七)

前言:这一节学习了关于组合框 QComboBox的内容


什么是组合框

QComboBox是一个文本框和一个下拉列表的组合。
用户从下拉列表里选择一个值,被选择的值显示在文本框中。

这里写图片描述

下拉列表里的东西至少有以下属性:
(1)位置index,第一项的index值为0,往下依次类推,index用于获取里面的东西时作为参数
(2)文本text,这一项的显示值
(3)关联数据data,每一项可以关联一个数据,比如整数、文本等类型的数据。跟前面的text有点类似,只不过data是给程序员看的,text是给用户看的


设置组合框

第一步:在ui下布局

第二步:添加下拉列表中的内容,这里注意,既可以在ui下双击添加,也可以在代码中添加,这里推荐用代码添加,因为代码中添加可以同时设置index和data。(注意:写在构造函数中)

    ui->comboBox->addItem("Chinese","ch");//这个函数就是添加用的,第一个参数是text,第二个是data
    ui->comboBox->addItem("English","en");
    ui->comboBox->addItem("French","fr");
    ui->comboBox->insertItem(2,"Japanese","ja");//这个函数也是添加用的,只不过第一个参数是index即是添加的位置,第二个是text,第三个是data

补充:在ui下的属性一栏有个叫editable,勾选了则表示这个下拉框还可以手动编辑。


相关的成员函数

1.int index =ui->comobox->currentIndex();//获取当前选中的他的index

2.QString text = ui->comobox->itemText(index)//返回当前index下的text

3.QString data = ui->comobox->itemData(index).toString()//返回当前index下的data

4.注意,若是我们手动输入的选型,不在下拉列表中,则它没有index,因此若想获得他的内容就不能用上面的方法,应该用:QString value =ui->comobox->currentText();

5.

    ui->comBox->currentIndex(); 
    ui->comBox->currentText(); 
    ui->comBox->currentData();

也是可以获取当前的index,text,data的


主要的信号函数

void    currentIndexChanged ( int index )

就是当组合框里的内容发生改变时

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值