要将 QComboBox
的下拉框设置为无边框,可以在 QComboBox::drop-down
的样式中设置 border
属性为 none
。以下是修改后的代码:
QString comboBoxStyle = QString(
"QComboBox {"
" border: 1px solid rgb(102, 138, 222);" // 边框颜色
" background-color: white;" // 背景颜色
" color: #409eff;" // 主选框字体颜色
"}"
""
"QComboBox::drop-down {"
" subcontrol-origin: padding;"
" subcontrol-position: right center;" // 下拉箭头位置
" width: 20px;" // 下拉箭头宽度
" border-left: none;" // 将左侧边框设置为无边框
"}"
""
"QComboBox::down-arrow {"
// " image: url(:/path/to/arrow.png);" // 自定义下拉箭头图标(可选)
"}"
""
"QComboBox QAbstractItemView {"
" border: 1px solid rgb(255, 255, 255);" // 下拉列表边框
" background-color: white;" // 下拉列表背景颜色
" selection-background-color: #f5f7fa;" // 选项悬浮背景颜色
" selection-color: #409eff;" // 选项悬浮字体颜色
"}"
);
修改说明:
- 在
QComboBox::drop-down
中,将border-left
设置为none
,从而实现无边框效果。
这样配置后,您的下拉框将不会显示左侧边框。如果需要完全去掉所有的边框,也可以考虑如下方式:
"QComboBox::drop-down {"
" border: none;"
//...
"}"
这将会移除下拉箭头的所有边界线。请根据您的具体需求进行调整。
内容由零声教学AI助手提供,问题来源于学员提问