0
對於matplotlib用途,我需要系統用於窗口背景的默認顏色。在Ubuntu中,例如,它是一個非常淺的灰色,比窗口XP更輕。如何獲取系統主題的調色板?
我正在改變默認的matplotlib補丁的顏色爲這個灰色,使它們看起來很原生。但是,我不想對其進行硬編碼。有沒有辦法從PyQt中獲取原生背景顏色?
對於matplotlib用途,我需要系統用於窗口背景的默認顏色。在Ubuntu中,例如,它是一個非常淺的灰色,比窗口XP更輕。如何獲取系統主題的調色板?
我正在改變默認的matplotlib補丁的顏色爲這個灰色,使它們看起來很原生。但是,我不想對其進行硬編碼。有沒有辦法從PyQt中獲取原生背景顏色?
Qt在QPalette
中定義了一堆系統顏色。爲了獲得在PySide某種顏色,呼叫
QColor(QPalette().color(state, role))
其中state
表示顏色的狀態(即QPalette.Disabled
,QPalette.Active
,QPalette.Inactive
,QPalette.Normal
)和role
表示要確定的符號的顏色。顏色角色的完整列表可在http://qt-project.org/doc/qt-4.8/qpalette.html#ColorRole-enum找到。
您可能要查找的顏色角色是QPalette.Window
,定義爲「一般背景顏色」。