通过调色板(QPalette)将readonly为true的QLineEdit颜色设置为灰色
生活随笔
收集整理的這篇文章主要介紹了
通过调色板(QPalette)将readonly为true的QLineEdit颜色设置为灰色
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
當將QLineEdit的readonly為true后,QLineEdit顏色默認情況下依然為白色,現在要設置為灰色(類似disable屬性為true的顏色),除了用樣式表設置外,調色板也可以實現,代碼如下:
escapedPatternLineEdit = new QLineEdit;escapedPatternLineEdit->setReadOnly(true);// 獲取編輯框的調色板QPalette palette = escapedPatternLineEdit->palette();palette.setBrush(QPalette::Base,palette.brush(QPalette::Disabled, QPalette::Base));escapedPatternLineEdit->setPalette(palette);其中
palette.brush(QPalette::Disabled, QPalette::Base));返回編輯框的文本框(第2個參數QPalette::Base參數表示)禁用狀態(第1個參數QPalette::Disabled表示)下的畫刷。其中下述代碼:
palette.setBrush(QPalette::Base,palette.brush(QPalette::Disabled, QPalette::Base));設置編輯框的文本框(第一個參數QPalette::Base表示)的畫刷(第二參數表示)。
關于編輯框的readonly和disable屬性的區別,請參見:《QLineEdit的readonly、disable屬性的區別》
總結
以上是生活随笔為你收集整理的通过调色板(QPalette)将readonly为true的QLineEdit颜色设置为灰色的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: DNF100级狂战士怎么加点 100级狂
- 下一篇: 魔兽世界怀旧服怎么完成诺格弗格药剂任务