QT5常用样式表

先来个 颜色代码表
  • 自绘按钮(需准备三张图片对应正常状态,鼠标经过状态以及按钮按下时的状态,以下只用了两张)
[plain] view plain copy
  1. ui->Button->setStyleSheet("  
  2.     QPushButton {border-image:url(:/icon/close);}          //正常状态  
  3.     QPushButton:hover{border-image:url(:/icon/close_on);}      //鼠标经过时显示这张  
  4.     QPushButton:hover:pressed{border-image:url(:/icon/close);} //按下按钮时  
  5. ");  
ui->Button->setStyleSheet("
	QPushButton {border-image:url(:/icon/close);}		   //正常状态
	QPushButton:hover{border-image:url(:/icon/close_on);}      //鼠标经过时显示这张
	QPushButton:hover:pressed{border-image:url(:/icon/close);} //按下按钮时
");

效果

  • 普通按钮(直接修饰一个按钮)
  1. ui->Button->setStyleSheet("  
  2. QPushButton{border: 2px solid grey;    //边框宽2像素颜色为灰色  
  3.     background:rgb(183,203,188);   //按钮背景色  
  4.     border-radius: 8px;}           //按钮四个角的弧度大小  
  5. QPushButton:hover{border-color:rgb(183,203,188);}  
  6. QPushButton:pressed{border-color:gray}   
  7. ");  
  1. ui->Button->setStyleSheet( "
  2. QPushButton{border: 2px solid grey; //边框宽2像素颜色为灰色
  3. background:rgb(183,203,188); //按钮背景色
  4. border-radius: 8px;} //按钮四个角的弧度大小
  5. QPushButton:hover{border-color:rgb(183,203,188);}
  6. QPushButton:pressed{border-color:gray}
  7. ");

效果



  • 滚动条(以列表框中的垂直滚动条为例,其他滚动条类似)
  1. ui->listWidget->verticalScrollBar()->setStyleSheet("  
  2. QScrollBar{border: 0px solid transparent; //设置滚动条整体样式  
  3.     background:transparent;  
  4.     width:11px;  
  5.     padding-top:10px; //滚动条上下箭头预留大小  
  6.     padding-bottom:10px;}  
  7. QScrollBar:handle{background:lightgray;  //设置滚动条中滑块的样式  
  8.     border:0px solid transparent;   
  9.     border-radius:2px;}  
  10. QScrollBar:handle:hover{background:#669999;} //鼠标经过滑块改变滑块颜色  
  11. QScrollBar:sub-line{background:lightgray; }    
  12. QScrollBar:add-line{background:lightgray;}  //这几个为滑块下面的槽的颜色  
  13. QScrollBar:add-page:vertical, QScrollBar:sub-page:vertical{background:transparent;}QScrollBar:add-line:vertical{height:10px;  //上箭头样式  
  14.     width:11px;  
  15.     border-image:url(:/icon/down);  
  16.     subcontrol-position:bottom;}  
  17. QScrollBar:sub-line:vertical{height:10px;  //下箭头样式  
  18.     width:11px;  
  19.     border-image:url(:/icon/up);  
  20.     subcontrol-position:top;}   
  21. QScrollBar:add-line:vertical:hover{height:10px; //鼠标经过上箭头时  
  22.     width:11px;  
  23.     border-image:url(:/icon/down_on);  
  24.     subcontrol-position:bottom;}    
  25. QScrollBar:sub-line:vertical:hover{height:10px; //鼠标经过下箭头时  
  26.     width:11px;  
  27.     border-image:url(:/icon/up_on);  
  28.     subcontrol-position:top;}    
  29. QScrollBar:handle:vertical{min-height:5px} //设置垂直滑块的最小高度值,否则列表很大时滑块会消失  
  30. ");  
  1. ui->listWidget->verticalScrollBar()->setStyleSheet( "
  2. QScrollBar{border: 0px solid transparent; //设置滚动条整体样式
  3. background:transparent;
  4. width:11px;
  5. padding-top:10px; //滚动条上下箭头预留大小
  6. padding-bottom:10px;}
  7. QScrollBar:handle{background:lightgray; //设置滚动条中滑块的样式
  8. border:0px solid transparent;
  9. border-radius:2px;}
  10. QScrollBar:handle:hover{background:#669999;} //鼠标经过滑块改变滑块颜色
  11. QScrollBar:sub-line{background:lightgray; }
  12. QScrollBar:add-line{background:lightgray;} //这几个为滑块下面的槽的颜色
  13. QScrollBar:add-page:vertical, QScrollBar:sub-page:vertical{background:transparent;}QScrollBar:add-line:vertical{height:10px; //上箭头样式
  14. width:11px;
  15. border-image:url(:/icon/down);
  16. subcontrol-position:bottom;}
  17. QScrollBar:sub-line:vertical{height:10px; //下箭头样式
  18. width:11px;
  19. border-image:url(:/icon/up);
  20. subcontrol-position:top;}
  21. QScrollBar:add-line:vertical:hover{height:10px; //鼠标经过上箭头时
  22. width:11px;
  23. border-image:url(:/icon/down_on);
  24. subcontrol-position:bottom;}
  25. QScrollBar:sub-line:vertical:hover{height:10px; //鼠标经过下箭头时
  26. width:11px;
  27. border-image:url(:/icon/up_on);
  28. subcontrol-position:top;}
  29. QScrollBar:handle:vertical{min-height:5px} //设置垂直滑块的最小高度值,否则列表很大时滑块会消失
  30. ");

效果



  • 进度条
  1. ui->QSlider->setStyleSheet("  
  2. QSlider:groove:horizontal {border: 1px solid #00688B;  
  3.     height:5px;  
  4.     border-radius: 3px;}  
  5. QSlider:handle:horizontal{background: qradialgradient(spread:pad, cx:0.5, cy:0.5, radius:0.5, fx:0.5, fy:0.5,stop:0.6 #45ADED, stop:0.778409 rgba(255, 255, 255, 255));  
  6.     width:10px;  
  7.     margin-top:-3px;  
  8.     margin-bottom:-3px;border-radius:5px;}  
  9. QSlider:handle:horizontal:hover {background: qradialgradient(spread:pad, cx:0.5, cy:0.5, radius:0.5, fx:0.5, fy:0.5, stop:0.6 #2A8BDA,stop:0.778409 rgba(255, 255, 255, 255));  
  10.     width:10px;  
  11.     margin-top: -3px;  
  12.     margin-bottom: -3px;  
  13.     border-radius:5px;}  
  14. QSlider:sub-page{border-radius:3px;  
  15. background:qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #009ACD, stop:1 #008B8B);  
  16.     margin: 2px 0;}  
  17. ");  
  1. ui->QSlider->setStyleSheet( "
  2. QSlider:groove:horizontal {border: 1px solid #00688B;
  3. height:5px;
  4. border-radius: 3px;}
  5. QSlider:handle:horizontal{background: qradialgradient(spread:pad, cx:0.5, cy:0.5, radius:0.5, fx:0.5, fy:0.5,stop:0.6 #45ADED, stop:0.778409 rgba(255, 255, 255, 255));
  6. width:10px;
  7. margin-top:-3px;
  8. margin-bottom:-3px;border-radius:5px;}
  9. QSlider:handle:horizontal:hover {background: qradialgradient(spread:pad, cx:0.5, cy:0.5, radius:0.5, fx:0.5, fy:0.5, stop:0.6 #2A8BDA,stop:0.778409 rgba(255, 255, 255, 255));
  10. width:10px;
  11. margin-top: -3px;
  12. margin-bottom: -3px;
  13. border-radius:5px;}
  14. QSlider:sub-page{border-radius:3px;
  15. background:qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #009ACD, stop:1 #008B8B);
  16. margin: 2px 0;}
  17. ");

效果



  • 搜索框(一个lineEdit加一个图形按钮searchBtn)
1.ui->lineEdit->setTextMargins(0, 0, ui->searchBtn->width(), 0);
2.ui->lineEdit->setStyleSheet("QLineEdit{border: 1px solid gray;border-radius: 3px;background:rgb(200, 231, 232);} QLineEdit:hover{border-color:transparent; }");
3.给searchBtn设置一个icon图标

4.ui->searchBtn ->setStyleSheet("background:transparent;");

效果



  • TabWidget
  1. QTabWidget ::pane{
  2. border:none;
  3. }
  4. QTabWidget ::tab-bar{
  5. alignment:left;
  6. }
  7. QTabBar ::tab{
  8. background:transparent;
  9. color:white;
  10. min-width: 30ex;
  11. min-height: 10ex;
  12. }
  13. QTabBar ::tab :hover{
  14. background: rgb(255, 255, 255, 100);
  15. }
  16. QTabBar ::tab :selected{
  17. border-color: white;
  18. background:white;
  19. color:green;
  20. }

效果图:


实例总结:

  1. *{
  2. font-size: 13px;
  3. color:white;
  4. font-family: "宋体";
  5. }
  6. CallWidget QLineEdit #telEdt
  7. {
  8. font-size: 24px;
  9. }
  10. QMainWindow, QDialog{
  11. background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
  12. stop: 0 #1B2534, stop: 0.4 #010101,
  13. stop: 0.5 #000101, stop: 1.0 #1F2B3C);
  14. }
  15. QWidget{
  16. background: #121922;
  17. }
  18. QLabel{
  19. background:transparent;
  20. }
  21. DailForm QLineEdit #phoneLineEdt{
  22. font-size: 36px;
  23. font-weight: bold;
  24. }
  25. QPushButton, QToolButton{
  26. background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
  27. stop: 0 #5B5F5F, stop: 0.5 #0C2436,
  28. stop: 1.0 #27405A);
  29. border-style: outset;
  30. border-width: 1px;
  31. border-radius: 5px;
  32. border-color: #11223F;
  33. padding: 1px;
  34. }
  35. QPushButton ::hover, QToolButton ::hover{
  36. background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
  37. stop: 0 #758385, stop: 0.5 #122C39,
  38. stop: 1.0 #0E7788);
  39. border-color: #11505C;
  40. }
  41. QPushButton ::pressed, QToolButton ::pressed{
  42. background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
  43. stop: 0 #969B9C, stop: 0.5 #16354B,
  44. stop: 1.0 #244F76);
  45. border-color: #11505C;
  46. }
  47. QPushButton ::disabled, QToolButton ::disabled{
  48. background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
  49. stop: 0 #282B2C, stop: 0.5 #09121A,
  50. stop: 1.0 #111D29);
  51. border-color: #0A1320;
  52. color: #6A6864;
  53. }
  54. QDialog QPushButton, QDialog QToolButton{
  55. min-width: 30px;
  56. min-height: 23px;
  57. }
  58. QToolButton [objectName="minimizeToolBtn"] {
  59. background: transparent;
  60. border:none;
  61. image: url(qss/minimize.png)
  62. }
  63. QToolButton [objectName="minimizeToolBtn"] :hover, QToolButton [objectName="minimizeToolBtn"] :pressed {
  64. image: url(qss/minimize_hover.png)
  65. }
  66. QToolButton [objectName="maximizeToolBtn"] {
  67. background: transparent;
  68. border:none;
  69. image: url(qss/maximize.png)
  70. }
  71. QToolButton [objectName="maximizeToolBtn"] :hover, QToolButton [objectName="maximizeToolBtn"] :pressed {
  72. image: url(qss/maximize_hover.png)
  73. }
  74. QToolButton [objectName="closeToolBtn"], QToolButton [objectName="customCloseWindow"] {
  75. background: transparent;
  76. border:none;
  77. image: url(qss/close.png)
  78. }
  79. QToolButton [objectName="closeToolBtn"] :hover, QToolButton [objectName="closeToolBtn"] :pressed{
  80. image: url(qss/close_hover.png)
  81. }
  82. QToolButton [objectName="customCloseWindow"] :hover, QToolButton [objectName="customCloseWindow"] :pressed{
  83. image: url(qss/close_hover.png)
  84. }
  85. QToolButton [objectName="titleSetUpToolBtn"]{
  86. background: transparent;
  87. border:none;
  88. image: url(qss/setup.png)
  89. }
  90. DailForm QToolButton #oneToolBtn, QToolButton #OneToolBtn, QToolButton #twoToolBtn, QToolButton #threeToolBtn,
  91. QToolButton #fourToolBtn, QToolButton #fiveToolBtn, QToolButton #sixToolBtn,
  92. QToolButton #sevenToolBtn, QToolButton #eightToolBtn, QToolButton #nineToolBtn,
  93. QToolButton #starToolBtn, QToolButton #zeroToolBtn, QToolButton #sharpToolBtn {
  94. font-size: 36px;
  95. border-radius: 10px;
  96. }
  97. DailForm QToolButton #delToolBtn{
  98. border-radius: 10px;
  99. }
  100. QFrame{
  101. border-color: #32435E;
  102. border-width: 1px;
  103. border-radius: 3px;
  104. }
  105. QLineEdit, QTextEdit {
  106. border: 1px solid #32435E;
  107. border-radius: 3px;
  108. /* padding: 0 8px; */
  109. background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
  110. stop: 0 #080B10,
  111. stop: 1.0 #212C3F);
  112. selection-background-color: #0A246A;
  113. }
  114. QLineEdit ::hover{
  115. border-color: #5D8B9E;
  116. }
  117. QLineEdit [echoMode="3"] {
  118. lineedit-password-character: 9679;
  119. }
  120. #QLineEdit :read-only {
  121. background: #543F7C;
  122. }
  123. QTabWidget ::pane { /* The tab widget frame */
  124. border: 0px solid #32435E;
  125. position: absolute;
  126. left: - 0.1em;
  127. }
  128. QTabWidget #MainTabWidget ::tab-bar {
  129. left: - 3px; /* move to the right by 5px */
  130. }
  131. QTabWidget #MainTabWidget QTabBar ::tab {
  132. height: 14ex;
  133. width: 14ex;
  134. }
  135. QTabBar ::tab {
  136. background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
  137. stop: 0 #292F31, stop: 1 #0C131E);
  138. }
  139. QTabBar ::tab :selected{
  140. background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
  141. stop: 0 #113845, stop: 1.0 #15A8FF);
  142. }
  143. QTabBar ::tab :hover {
  144. background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
  145. stop: 0 #113845, stop: 1.0 #0E6F80);
  146. }
  147. #QTabBar ::tab :selected {
  148. border-color: #32435E;
  149. border-right-color: #32435E; /* same as pane color */
  150. }
  151. #QTabBar ::tab:! selected {
  152. margin-left: 2px; /* make non-selected tabs look smaller */
  153. }
  154. #QTabBar :tab :first :selected {
  155. margin-top: 0;
  156. }
  157. QTabBar :tab :last :selected {
  158. margin-right: 0;
  159. }
  160. QTabBar :tab :only-one {
  161. margin: 0;
  162. }
  163. QListWidget{
  164. border: 1px solid #32435E;
  165. background: #050609;
  166. }
  167. QListWidget ::item :selected {
  168. /*border: 0px solid #33CCFF;*/
  169. border:none;
  170. background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
  171. stop: 0 #6A848C, stop: 1.0 #0F9EAF);
  172. padding: 0px;
  173. margin: 0px;
  174. }
  175. #QListWidget ::item :selected:! active {
  176. border-width: 0px ;
  177. }
  178. #QListWidget ::item :selected :active {
  179. border-width: 1px;
  180. }
  181. QComboBox {
  182. border: 1px solid #32435E;
  183. border-radius: 3px;
  184. padding: 1px 18px 1px 3px;
  185. min-width: 6em;
  186. }
  187. QComboBox ::hover{
  188. border-color: #5D8B9E;
  189. }
  190. QComboBox :editable {
  191. background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
  192. stop: 0 #080B10,
  193. stop: 1.0 #212C3F);
  194. }
  195. QComboBox:! editable, QComboBox ::drop-down :editable {
  196. background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
  197. stop: 0 #080B10,
  198. stop: 1.0 #212C3F);
  199. }
  200. /* QComboBox gets the "on" state when the popup is open */
  201. QComboBox:! editable :on, QComboBox ::drop-down :editable :on {
  202. background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
  203. stop: 0 #080B10,
  204. stop: 1.0 #212C3F);;
  205. }
  206. QComboBox :on { /* shift the text when the popup opens */
  207. padding-top: 3px;
  208. padding-left: 4px;
  209. }
  210. QComboBox ::drop-down {
  211. subcontrol-origin: padding;
  212. subcontrol-position: top right;
  213. width: 15px;
  214. border-left-width: 1px;
  215. border-left-color: 32435E;
  216. border-left-style: solid; /* just a single line */
  217. border-top-right-radius: 3px; /* same radius as the QComboBox */
  218. border-bottom-right-radius: 3px;
  219. }
  220. QComboBox ::down-arrow {
  221. image: url(qss/downarrow.png);
  222. }
  223. QComboBox ::down-arrow :on { /* shift the arrow when popup is open */
  224. top: 1px;
  225. left: 1px;
  226. }
  227. QComboBox QAbstractItemView {
  228. border: 2px solid #32435E;
  229. selection-background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
  230. stop: 0 #506B79,
  231. stop: 1.0 #0D95A6);
  232. background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
  233. stop: 0 #1B2534, stop: 0.4 #010101,
  234. stop: 0.5 #000101, stop: 1.0 #1F2B3C);
  235. }






转载自:http://blog.csdn.net/csdn_sxl/article/details/50586576

           http://www.cnblogs.com/findumars/p/4886330.html

http://blog.csdn.net/ailinty/article/details/8953724

猜你喜欢

转载自blog.csdn.net/qq_32693119/article/details/80875859