QT之QComboBox组件

文章目录
- 1.引言
- 2.初见QComboBox
- 3.核心功能和常用方法
- 1. 添加和删除选项
- 2. 获取和设置当前值
- 3. 可编辑模式
- 4. 数据绑定
- 4.信号与槽
- 5.应用场景
- 6.使用示例
- 7.总结
1.引言
在记事本项目中,不同的编码设置是有问题存在的,假如一个文件用 ANSI编码储存的,但是如果我们用 uTF-8来打开这个问题的话,就会出现乱码,那有没有一种方式可以让用户在打开时可以选择以何种方式打开,在保存内容时可以选择以何种方式关闭呢?有的兄弟,有的!像这样的解决方案我们有 QComboBox组件解决方案!
2.初见QComboBox
QComboBox 是 Qt 提供的一个组合框控件。
它允许用户从下拉列表中选择一个选项,也可以设置为可编辑,允许用户输入自定义内容。
3.核心功能和常用方法
1. 添加和删除选项
addItem(const QString &text)addItems(const QStringList &texts)removeItem(int index)
2. 获取和设置当前值
currentIndex()、currentText()setCurrentIndex(int index)、setCurrentText(const QString &text)
3. 可编辑模式
setEditable(bool)isEditable()
4. 数据绑定
setItemData(index, QVariant)itemData(index)
4.信号与槽
QComboBox支持的信号如下:

其中最常用的为
currentIndexChanged(int index)currentIndexChanged(const QString &text)activated(int index)/highlighted(int index)
配合槽函数实现交互逻辑。
5.应用场景
控件广泛应用于需要从多个选项中进行选择的用户界面场景,例如表单和设置界面

6.使用示例
实验目的
创建如下的 QComboBox:

利用本身的信号,来连接槽,在槽函数中返回我们所选的内容的编号。
实验代码


实验现象

7.总结
本文我们聚焦 QComboBox组件,QComboBox主要的应用场景聚焦在用户选择,我们可以通过关联信号与槽,在用户观察到组件所选内容发生变化时,触发槽函数,在槽函数中获取内容,进行逻辑处理。在记事本项目中乱乱码问题通过该组件可以得到很好的解决!
