Zagwozdka w PySide2

7 views
Skip to first unread message

niktnob...@gmail.com

unread,
Jul 5, 2020, 8:21:46 AM7/5/20
to
Uczę się właśnie użycia PySide2. Korzystam z Ubuntu i PyCharm. Po uruchomieniu przykładowego programu otrzymuje bardzo dziwny efekt. Raz dodane Niestandardowe kolory w dialogu QColorDialog zachowują się na liście kolorów niestandardowych pomiędzy uruchomieniami programu. Nie usuwa ich wyjście z PyCharm ani przeładowanie systemu.
W jakim pliku to się zapisuje? I jaki jest wogóle mechanizm tego zachowywania?

Program:
#!/usr/bin/python

from PySide2.QtWidgets import (QWidget, QPushButton, QFrame,
QColorDialog, QApplication)
from PySide2.QtGui import QColor
import sys

class Example(QWidget):

def __init__(self):
super().__init__()
self.initUI()

def initUI(self):
col = QColor(0, 0, 0)
self.btn = QPushButton('Dialog', self)
self.btn.move(20, 20)
self.btn.clicked.connect(self.showDialog)
self.frm = QFrame(self)
self.frm.setStyleSheet("QWidget { background-color: %s }"
% col.name())
self.frm.setGeometry(130, 22, 200, 200)
self.setGeometry(300, 300, 450, 350)
self.setWindowTitle('Color dialog')
self.show()

def showDialog(self):
col = QColorDialog.getColor()
if col.isValid():
self.frm.setStyleSheet('QWidget { background-color: %s }'
% col.name())

def main():
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())

if __name__ == '__main__':
main()

niktnob...@gmail.com

unread,
Jul 5, 2020, 9:10:58 AM7/5/20
to
Dalsze eksperymenty wykazują, że ustawienie
options=QColorDialog.DontUseNativeDialog
zmienia wygląd dialogu i tworzy następny zestaw zachowywanych gdzieś niestandardowych kolorów.
Czy te zapamiętane kolory można usunąć?
Reply all
Reply to author
Forward
0 new messages