在记事本项目中,不同的编码设置是有问题存在的,假如一个文件用 ANSI编码储存的,但是如果我们用 uTF-8来打开这个问题的话,就会出现乱码,那有没有一种方式可以让用户在打开时可以选择以何种方式打开,在保存内容时可以选择以何种方式关闭呢?有的兄弟,有的!像这样的解决方案我们有 QComboBox组件解决方案!
QComboBox 是 Qt 提供的一个组合框控件。
它允许用户从下拉列表中选择一个选项,也可以设置为可编辑,允许用户输入自定义内容。
addItem(const QString &text)addItems(const QStringList &texts)removeItem(int index)currentIndex()、currentText()setCurrentIndex(int index)、setCurrentText(const QString &text)setEditable(bool)isEditable()setItemData(index, QVariant)itemData(index)QComboBox支持的信号如下:

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

实验目的
创建如下的 QComboBox:

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


实验现象

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