在 Qt 中,QComboBox 是一个常用的控件,用于显示可选择项的下拉列表。在自定义 QComboBox 的样式时,我们可以通过 QSS(Qt Style Sheets)来修改其外观,并利用 QFrame 来控制下拉列表的阴影效果。本文将详细介绍如何通过 QSS 设置 QComboBox 的样式,并结合代码演示如何去除 QComboBox 的下拉阴影。
1. QSS 自定义 QComboBox 样式
通过 QSS,可以轻松修改 QComboBox 的背景颜色、边框、箭头图标、以及下拉列表的项目样式。下面是一个示例 QSS,用于自定义 QComboBox 的样式。
/* QComboBox 主体样式 */
QComboBox {
background: #EEEEEE;
border-radius: 2px;
border: 1px solid #D8D8D8;
padding-left: 10px; /* 左侧内边距 */
padding-right: 0px;
font-family: "Microsoft YaHei";
font-size: 12px;
color: #333333;
height: 14px; /* 根据需要调整高度,确保箭头和文字垂直居中 */
}
/* 下拉按钮(箭头)的样式 */
QComboBox::drop-down {
subcontrol-origin: padding;
subcontrol-position: top right;
width: 20px; /* 总宽度 = 箭头宽度 9px + 右边距 8px + 8px 额外空间 */
border: none; /* 去除默认边框 */
}
/* 下拉箭头的具体样式 */
QComboBox::down-arrow {
image: url(":/


2919

被折叠的 条评论
为什么被折叠?



