我正在嘗試制作一個在明暗模式之間切換的按鈕。切換到暗模式非常容易,但再次切換到亮模式有點復雜。
我正在嘗試切換到默認調色板,但我不知道它是如何作業的。
這是我正在使用的功能:
def modeSwitch(self):
if self.dark_mode:
self.dark_mode = False
QApplication.setPalette("")
else:
self.dark_mode = True
dark_palette = QPalette()
dark_palette.setColor(QPalette.Window, QColor(35, 35, 35))
dark_palette.setColor(QPalette.WindowText, Qt.white)
dark_palette.setColor(QPalette.Base, QColor(35, 35, 35))
dark_palette.setColor(QPalette.AlternateBase, QColor(35, 35, 35))
dark_palette.setColor(QPalette.ToolTipBase, QColor(35, 35, 35))
dark_palette.setColor(QPalette.ToolTipText, Qt.white)
dark_palette.setColor(QPalette.Text, Qt.white)
dark_palette.setColor(QPalette.Button, QColor(35, 35, 35))
dark_palette.setColor(QPalette.ButtonText, Qt.white)
dark_palette.setColor(QPalette.BrightText, Qt.red)
dark_palette.setColor(QPalette.Link, QColor(35, 35, 35))
dark_palette.setColor(QPalette.Highlight, QColor(35, 35, 35))
dark_palette.setColor(QPalette.HighlightedText, QColor(97, 97, 97))
dark_palette.setColor(QPalette.Active, QPalette.Button, QColor(35, 35, 35))
dark_palette.setColor(QPalette.Disabled, QPalette.ButtonText, Qt.darkGray)
dark_palette.setColor(QPalette.Disabled, QPalette.WindowText, Qt.darkGray)
dark_palette.setColor(QPalette.Disabled, QPalette.Text, Qt.darkGray)
dark_palette.setColor(QPalette.Disabled, QPalette.Light, QColor(35, 35, 35))
QApplication.setPalette(dark_palette)
uj5u.com熱心網友回復:
要將調色板重置為系統默認值,您可以呼叫:
QApplication.setPalette(QApplication.style().standardPalette())
這將從當前樣式中獲取調色板,這將是系統默認樣式。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/527357.html
