Элемент таблицы стилей работает в Windows, но не в raspberry-pi - PullRequest
0 голосов
/ 28 мая 2020

Я пишу программу на машине Windows 10 и загружаю код по SSH на машину, на которой она будет работать - Raspberry Pi с Raspbian. При применении некоторых таблиц стилей к определенным объектам они отлично смотрятся на Windows, но некоторые элементы не улавливаются на машине Linux.

Я создал тестовую программу, чтобы показать, что происходит:

This is on the Windows machine, all is working as expected

This is on the Raspbian machine

Единственная проблема, с которой я сталкиваюсь на машине Raspbian, заключается в том, что фон не заполняется. Размер шрифта и атрибуты цвета подбираются нормально. Я пробовал использовать .autoFillBackground() и .setAttribute(Qt.WA_StyledBackground), но ни один из них не дал никаких результатов.

Я также безуспешно пробовал комбинацию QPushButton::active: и background: / background-color:.

Есть идеи?

РЕДАКТИРОВАТЬ: PySide2 был установлен с использованием:

apt-get install python3-pyside2.qt3dcore python3-pyside2.qt3dinput python3-pyside2.qt3dlogic python3-pyside2.qt3drender python3-pyside2.qtcharts python3-pyside2.qtconcurrent python3-pyside2.qtcore python3-pyside2.qtgui python3-pyside2.qthelp python3-pyside2.qtlocation python3-pyside2.qtmultimedia python3-pyside2.qtmultimediawidgets python3-pyside2.qtnetwork python3-pyside2.qtopengl python3-pyside2.qtpositioning python3-pyside2.qtprintsupport python3-pyside2.qtqml python3-pyside2.qtquick python3-pyside2.qtquickwidgets python3-pyside2.qtscript python3-pyside2.qtscripttools python3-pyside2.qtsensors python3-pyside2.qtsql python3-pyside2.qtsvg python3-pyside2.qttest python3-pyside2.qttexttospeech python3-pyside2.qtuitools python3-pyside2.qtwebchannel python3-pyside2.qtwebsockets python3-pyside2.qtwidgets python3-pyside2.qtx11extras python3-pyside2.qtxml python3-pyside2.qtxmlpatterns python3-pyside2uic

из https://forum.qt.io/topic/112813/installing-pyside2-on-raspberry-pi

import sys

from PySide2.QtWidgets import *
from PySide2.QtGui import *
from PySide2.QtCore import *


class Window(QWidget):
    def __init__(self):
        QWidget.__init__(self)

        self.btn1 = QPushButton("Button 1")
        self.btn2 = QPushButton("Button 2")

        self.btn1.setStyleSheet("""background: blue; color: yellow; border: 3px solid black""")
        self.btn2.setStyleSheet("background: red; color: white; font-size: 30px;")

        layout = QVBoxLayout()
        layout.addWidget(self.btn1)
        layout.addWidget(self.btn2)

        self.setLayout(layout)


app = QApplication(sys.argv)
window = Window()
window.show()
app.exec_()

1 Ответ

0 голосов
/ 29 мая 2020

О'кей, так небольшое развитие. Я обнаружил, что если вы добавите границу, цвет заполнится. Немного странно, но я думаю, это работает. Это не идеально, так как при этом кнопка теряет свое «нажатое» состояние, но будет возиться с ней и посмотреть, что я получу.

"border: none;" также заполняет фон.

Border needed

...