Я пишу скрипт системного лотка PyQt.Это просто переключатель для системных служб.Я добавляю QActions в QMenu с помощью этого кода, моя цель - показать работающие сервисы зелеными и остановленные сервисы красным:
....
for service, started in s.services.items():
action = self.menu.addAction(service)
if started: #It is my purpose, but obviously it doesn't work
action.setFontColor((0, 255, 0))
else:
action.setFontColor((255, 0, 0))
action.triggered.connect(functools.partial(self.service_clicked, service))
....
Проблема в том, что у QAction нет метода setFontColor :).У него есть метод setFont, но я не смог увидеть метод, связанный с цветом, в документации QFont.И он не поддерживает расширенное форматирование текста.
Я нашел возможное решение здесь , но кажется, что для этой простой операции так много работы.
Может кто-нибудь предложитьмне проще?