QComoboBox是Qt封装的一个选择框的东西,但是我在使用过程中有一点感觉很不好,如图:
不论你往里面添加多少个它都会给你显示全部,甚至给你铺满全屏,后来看了官方文档发现有个setMaxVisibleItems()的方法,我欣喜若狂啊,终于特么的能解决了,但是,很遗憾,不知为啥,我设置上之后并没有起作用,依然会显示全部,后来搜了百度发现有个人是这样解决的
QComboBox *box = new QComboBox(this);
QStringList list;
list<<"adsf"<<"afds"<<"asf"<<"afsdds"<<"afdfs"<<"adsf"<<"asd";
box->addItems();
box->setMaxVisibleItems(5);
box->setStyleSheet("QComboBox{combobox-popup:0;}");
他加了一句**box->setStyleSheet(“QComboBox{combobox-popup:0;}”);**当时看见我果断试了试,我也是没想到还真的就可以了,哈哈哈,当然,我到现在也没明白是为什么,但是问题解决,完美收官,上图:
后来,为了保险起见,我还是又设置了一次滑动条,话不多说,上完整实例代码:
QComboBox * comb = new QComboBox(this);
QStringList list;
list << "adsfasd" << "asdf" << "sdfghfg" << "sdfg" << "dfghdfgh" << "dfghdfgs" << "sdfgdsf" ;
comb->addItems(list);
comb->view()->setVerticalScrollBarPolicy(Qt::ScrollBarAsNeeded);
comb->setStyleSheet("QComboBox{combobox-popup:0;}");
comb->setMaxVisibleItems(5);
以后会经常更新一些细节且实用的技巧和实例,尽量让你们看了都懂,不用再浪费时间,所以记得点个关注;
好了,下课