Pyqt5 Python3 QPushButton цвет StrongFocus по умолчанию или выбранный цвет вкладки - PullRequest
0 голосов
/ 06 мая 2020

Я пытаюсь найти способ изменить цвет QPushButton в PyQt5, используя Python3.

Я могу установить цвет фона и цвет наведения, но программы сохраняют цвет фокуса или цвет сильного фокуса

по умолчанию. Ничего не могу найти об этом, я загружаю свой qss файл StyleSheet в свой

main.py.

как

QPushButton{
    background-color: #9de650;       #works fine
}


QPushButton:hover{
    background-color: green;         #works fine
}

QPushButton:focus {
    background-color: red;           #doesnt work if the focus color is the color of the button you can
    }                                # change using tab to navigate among a list of buttons

QPushButton:strong:focus {           #doenst work
    background-color: red; 
    }

QPushButton:pressed {                #doesnt work get the tab color
    background-color: green; 
    }

Я не могу понять, почему QPushButton: press не работает. Я нахожусь в самом начале, и у меня нет функций подключения или нажатия кнопок на кнопках в моем скрипте. Я использую Designer, и цвет, который я получаю на моем QPushButton, такой же, как и в предварительном просмотре дизайнера.

То же самое поведение, если я сохраню код qss непосредственно в файл пользовательского интерфейса в дизайнере.

При переходе между моим списком кнопок я вижу, что они принимают красный цвет на очень короткое время

перед тем, как стать синим, красный - это цвет, выбранный мной для фокусировки.

есть подсказка?

1 Ответ

0 голосов
/ 02 июня 2020

musicmante q ответил на мой вопрос:

Как я и думал. Breeze отменяет некоторые цвета и поведение, если определение css виджета не является полным; что странно, вы говорите, что кнопка: нажата не работает, но в моих тестах работает. В любом случае, Fusion - это стиль, который обычно лучше обрабатывает таблицы стилей. Если это не проблема, вы можете просто установить стиль приложения с помощью app.setStyle (QtWidgets.QStyleFactory.create ('Fusion')).

...