2015-05-04 10 views
9

В KDE 5 (Kubuntu 15.04/Plasma 5.2) отключенные кнопки Qt4 (Qt4) неотличимы от кнопок без функции. Эта проблема не существует в KDE 4,14, как следующий скриншот показывает:Отключенные кнопки Qt не отображаются как отключенные в Plasma 5.2 (KDE 5)

Disabled buttons: KDE 4 versus KDE 5

Источник программы для этого диалога написана на Python с PyQt4:

from PyQt4 import QtGui 
import sys 


if __name__ == "__main__": 
    # main function 

    app = QtGui.QApplication(sys.argv) 

    qw = QtGui.QWidget() 
    qw.resize(150, 120) 
    qw.setWindowTitle("KDE 4") 
    #qw.setWindowTitle("KDE 5") 

    b1, b2 = QtGui.QPushButton(qw), QtGui.QPushButton(qw) 
    for b, y, e in zip([b1, b2], [30, 60], [False, True]): 
     b.move(30, y) 
     b.setEnabled(e) 
     b.setText("Enabled" if e else "Disabled") 

    qw.show() 
    sys.exit(app.exec_()) 

Как я могу сделать инвалидов Кнопки в KDE 5 распознаются?

Update 2015-07-17:

Вроде бы проблема темы: В Debian/Sid, с использованием кислородно-Theme позволяет избежать этой проблемы.

Также Bug 343930 решает эту проблему.

+0

В работе вокруг набор стилей для текста кнопки. – ngulam

+0

@ngulam Спасибо - я догадываюсь, что в конечном итоге сделаю индивидуальные таблицы стилей - до свидания портативность ... – Dietrich

+0

@ Dietrich Это не самые элегантные решения, но вы должны иметь возможность хранить свою таблицу стилей в скрипте, используя строку с тремя кавычками , и просто загрузить из строки. По крайней мере, это решит проблему переносимости. –

ответ

1

Это была ошибка в теме Breeze, используемой KDE/Plasma5. Теперь он был разрешен. Ниже приведены скриншоты включенных и отключенных кнопок с использованием Qt5 и PyQt5.

Using C++/Qt5

Using Python/Qt5