QT如何实现二级下拉菜单(Combo box)

时间:2024-04-08 21:40:26

在上一篇博文里,我们看到在选择院系之后,只能手动填写班级。而现在我们想要的是:可以根据所选的院系来控制所选的班级。本方法也适合在其他方面使用,比如,选择省份之后可以以此选择该省份下面所属的市。
博主属于QT初学者,想要这个功能,到某度搜了很多,未果,于是,静思,打坐,最终参悟一种方法。

首先看一下,在Qt的设计师界面:
QT如何实现二级下拉菜单(Combo box)
我们可以将院系看成一级菜单,班级是二级菜单。

在一级菜单我们可以固定(静态)选项:
QT如何实现二级下拉菜单(Combo box)
双击combo box即可自定义添加

然后我们选中一级菜单(第一个combo box)右击转到槽,选currentIndexChanged(int index),这里的参数可以省略。在槽函数里面自定义添加二级菜单,通过一级菜单动态匹配。
QT如何实现二级下拉菜单(Combo box)

这是博主想到的方法,但是,这种方法看起来有些冗余,本想到C++的多态,也没有想到具体的实现方法。由于系初学者,对QT了解也不够深入,不知道是否还有更加精简的方法,希望各路大神不吝赐教。另外,也希望给遇到同类问题的朋友一点启发。