QSS常用属性

  1. font15px "Segoe UI";                           /* 字体:大小 名称 */  
  2.    font-family"Segoe UI";                     /* 字体名称 */  
  3.      
  4.    padding4px;                                    /* 文字边距 */  
  5.    padding-left5px;                               /* 文字左边距 */  
  6.    padding-right10px;                         /* 文字右边距 */  
  7.    padding-top3px;                                /* 文字顶边距 */  
  8.    padding-bottom3px;                         /* 文字底边距 */  
  9.    color#F5F5F5;                                  /* 前景(文本)颜色 */  
  10.    color: qlineargradient();                        /* 前景(文本)颜色:线性渐变*/  
  11.    color: qradialgradient();                        /* 前景(文本)颜色:辐射渐变*/  
  12.    color: qconicalgradient();                       /* 前景(文本)颜色:梯形渐变*/  
  13.   
  14.    background-color#202122;                       /* 背景颜色 */  
  15.    background-color: qlineargradient();         /* 背景颜色:线性渐变*/  
  16.    background-color: qradialgradient();         /* 背景颜色:辐射渐变*/  
  17.    background-color: qconicalgradient();            /* 背景颜色:梯形渐变*/  
  18.   
  19.    background-image:url(boder.png);                 /* 背景图片 */  
  20.    background-position: ;                           /* 背景图片对齐方式 */  
  21.    background-repeat: ;                         /* 背景图片平铺方式 */  
  22.   
  23.    border1px solid #FDBC03;                   /* 边框:宽度 颜色*/  
  24. border-image:url(boder.png) 4 8 12 16;          /* 边界图 切线 */  
  25.    border-radius: 4px;                          /* 角弧度 */  
  26.    border-top-left-radius: ;                        /* 角弧度:左上角*/  
  27.    border-top-right-radius: ;                       /* 角弧度:右上角*/  
  28.    border-bottom-left-radius: ;                 /* 角弧度:左下角*/  
  29.    border-bottom-right-radius: ;                    /* 角弧度:右下角*/  
  30.   
  31. min-width65px;                                /* 宽度 */  
  32. min-height12px;                               /* 高度 */  
<think>好的,用户现在想了解QSS常用样式。首先,我需要回顾一下之前用户的问题历史。之前他问过如何设置边距,我详细介绍了margin和padding的区别、语法、示例以及注意事项。现在用户可能希望更全面地了解QSS的其他常用属性,比如颜色、字体、边框等。 接下来,我需要确定用户的使用场景。可能用户正在使用Qt进行界面开发,想要美化应用程序的外观。用户可能是开发者,对QSS有一定基础,但需要更系统的整理或者快速参考。用户可能遇到的问题包括如何应用不同的样式属性,或者某些属性不起作用的情况。 用户的需求不仅仅是列举常用样式,可能还希望了解每个属性的具体用法、注意事项以及实际示例。深层需求可能包括如何高效调试QSS,解决样式冲突,以及如何结合布局管理器使用QSS。此外,用户可能对伪状态和子控件选择器感兴趣,这些能增强样式的灵活性。 我需要组织内容结构清晰,分门别类介绍各个属性,比如颜色和字体、边框、边距和尺寸、伪状态、子控件等。同时要提供示例代码,方便用户直接复制使用。注意事项部分也很重要,比如属性支持性、继承性、选择器优先级和调试技巧,这些能帮助用户避免常见陷阱。 还要确保回答与之前的边距设置内容衔接,比如提到之前讲过的margin和padding,这里可以简要回顾并补充更多细节。同时,注意用户可能的困惑点,比如某些控件不支持特定属性,或者布局管理器对样式的影响,需要提前说明。 最后,总结部分要强调QSS的强大功能,并建议结合布局管理器使用,同时鼓励用户多实践和调试。这样用户能得到全面的指导,解决实际问题。</think>以下是Qt样式表(QSS)的常用样式总结,按功能分类整理,附带语法说明和示例: --- ### 一、**基础样式** #### 1. **颜色与字体** ```css color: #FF0000; /* 文字颜色 */ background-color: #00FF00; /* 背景色 */ font-family: "微软雅黑"; /* 字体 */ font-size: 14px; /* 字号 */ font-weight: bold; /* 加粗 */ ``` **示例**: ```css QLabel { color: white; background-color: #333; font-size: 16px; } ``` #### 2. **边框** ```css border: 2px solid red; /* 边框样式 */ border-radius: 5px; /* 圆角 */ border-top: 1px dashed #000; /* 单边边框 */ ``` **示例**: ```css QPushButton { border: 1px solid #0078D4; border-radius: 3px; } ``` --- ### 二、**布局控制** #### 1. **边距与填充(回顾)** ```css margin: 10px; /* 控件外部间距 */ padding: 5px; /* 内容与边框间距 */ ``` #### 2. **尺寸控制** ```css min-width: 100px; /* 最小宽度 */ max-height: 50px; /* 最大高度 */ qproperty-iconSize: 32px 32px; /* 图标尺寸(需用qproperty) */ ``` --- ### 三、**状态控制(伪状态)** #### 1. **通用伪状态** ```css QPushButton:hover { ... } /* 鼠标悬停 */ QLineEdit:focus { ... } /* 获取焦点 */ QCheckBox:checked { ... } /* 勾选状态 */ QPushButton:disabled { ... } /* 禁用状态 */ ``` **示例**: ```css QPushButton:hover { background-color: #0056b3; } QLineEdit:focus { border: 2px solid #0078D4; } ``` #### 2. **复杂状态组合** ```css QComboBox:editable:on { ... } /* 可编辑且下拉展开时 */ ``` --- ### 四、**子控件控制** #### 1. **子部件选择器** ```css QComboBox::drop-down { ... } /* 下拉箭头 */ QScrollBar::handle:vertical { ... } /* 滚动条滑块 */ QSpinBox::up-button { ... } /* 微调框向上按钮 */ ``` **示例**: ```css QScrollBar::handle:vertical { background: #888; min-height: 20px; } ``` #### 2. **复杂组件定制** ```css /* 表格表头 */ QHeaderView::section { background-color: #f0f0f0; padding: 5px; } /* 菜单分隔线 */ QMenu::separator { height: 1px; background: gray; } ``` --- ### 五、**高级特效** #### 1. **渐变与阴影** ```css background: qlineargradient(x1:0, y1:0, x2:1, y2:1, stop:0 #FF0000, stop:1 #0000FF); /* 线性渐变 */ border: 1px solid rgba(0,0,0,50%); /* 半透明边框 */ ``` #### 2. **动态效果** ```css QPushButton:pressed { padding-left: 15px; /* 按下时文字右移 */ color: white; } ``` --- ### 六、**注意事项** 1. **属性支持性**: - 部分属性仅支持特定控件(如 `::indicator` 用于复选框) - 表格控件需通过 `QTableView::item` 设置单元格样式 2. **继承与覆盖**: ```css /* 全局默认字体 */ * { font-family: "Arial"; } /* 特定控件覆盖 */ QLabel { font-family: "微软雅黑"; } ``` 3. **调试技巧**: - 在Qt Designer中实时预览 - 使用 `widget->styleSheet()` 输出生效的样式 --- ### 七、**完整示例** ```css /* 自定义深色主题按钮 */ QPushButton { color: white; background: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #404040, stop:1 #202020); border: 1px solid #606060; border-radius: 4px; padding: 8px 16px; margin: 2px; } QPushButton:hover { background: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #505050, stop:1 #303030); } QPushButton:pressed { background: #101010; } ``` --- 通过灵活组合这些样式,可以高效定制Qt界面。建议结合Qt的布局系统(如 `setSpacing()`、`setContentsMargins()`)使用QSS以达到最佳效果。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值