QComboBox设置下拉框的高度和文字大小,和本身的宽度和大小

设置QComboBox的默认model为QAbstractItemDelegate,但不幸的的是QComboBox的Item并不继承自QStyedItemDeletegate而是继承自QItemDelegate。

如果要设置QComboBox的行高,使用Qss的方式

QComboBox QAbstractItemView::item{min-height:20px;}

为了能够生效,需要设置你的QComboBox的ItemDelegate为QStyledItemDelegate:

QStyledItemDelegate *itemDelegate = new QStyledItemDelegate();
combox->setItemDelegate(itemDelegate);

实例:

  

QStyledItemDelegate *itemDelegate = new QStyledItemDelegate();
m_groupNameBox->setItemDelegate(itemDelegate);
m_groupNameBox->setStyleSheet(QString("QComboBox{border:1px solid gray;font:15pt;}""QComboBox QAbstractItemView::item{height:40px;}"));

m_groupNameBox->setFixedHeight(30);//改变本身带选择的高度。或者通过上面的QSS  font:15pt就可以直接更改qcombobox的字体大小。

另外一种方法就是重写QComboBox,定制自己的ComboBox,例子如下链接:

http://www.cnblogs.com/csuftzzk/p/qss_combobox.html

猜你喜欢

转载自www.cnblogs.com/yuzhiboprogram/p/10058523.html