本文整理汇总了Python中PyQt5.QtWidgets.QWidget.setStyleSheet方法的典型用法代码示例。如果您正苦于以下问题:Python QWidget.setStyleSheet方法的具体用法?Python QWidget.setStyleSheet怎么用?Python QWidget.setStyleSheet使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PyQt5.QtWidgets.QWidget
的用法示例。
在下文中一共展示了QWidget.setStyleSheet方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: __init__
# 需要导入模块: from PyQt5.QtWidgets import QWidget [as 别名]
# 或者: from PyQt5.QtWidgets.QWidget import setStyleSheet [as 别名]
def __init__(self):
QTreeWidgetItem.__init__(self)
self.download_info = None
self._logger = logging.getLogger('TriblerGUI')
bar_container = QWidget()
bar_container.setLayout(QVBoxLayout())
bar_container.setStyleSheet("background-color: transparent;")
self.progress_slider = QProgressBar()
# We have to set a zero pixel border to get the background working on Mac.
self.progress_slider.setStyleSheet("""
QProgressBar {
background-color: white;
color: black;
font-size: 12px;
text-align: center;
border: 0px solid transparent;
}
QProgressBar::chunk {
background-color: #e67300;
}
""")
bar_container.layout().addWidget(self.progress_slider)
bar_container.layout().setContentsMargins(4, 4, 8, 4)
self.progress_slider.setAutoFillBackground(True)
self.bar_container = bar_container
示例2: Loading
# 需要导入模块: from PyQt5.QtWidgets import QWidget [as 别名]
# 或者: from PyQt5.QtWidgets.QWidget import setStyleSheet [as 别名]
class Loading(QWidget):
ON = False #to prevent multiple instances
def __init__(self):
from ..constants import WINDOW as parent
super().__init__(parent, Qt.FramelessWindowHint)
self.widget = QWidget(self)
self.widget.setStyleSheet("background-color:rgba(0, 0, 0, 0.65)")
self.progress = QProgressBar()
self.progress.setStyleSheet("color:white")
self.text = QLabel()
self.text.setAlignment(Qt.AlignCenter)
self.text.setStyleSheet("color:white;background-color:transparent;")
layout_ = QHBoxLayout()
inner_layout_ = QVBoxLayout()
inner_layout_.addWidget(self.text, 0, Qt.AlignHCenter)
inner_layout_.addWidget(self.progress)
self.widget.setLayout(inner_layout_)
layout_.addWidget(self.widget)
self.setLayout(layout_)
self.resize(300,100)
self.move(parent.window().rect().center()-QPoint(120,50))
def mousePressEvent(self, QMouseEvent):
pass
def setText(self, string):
if string != self.text.text():
self.text.setText(string)
示例3: lock
# 需要导入模块: from PyQt5.QtWidgets import QWidget [as 别名]
# 或者: from PyQt5.QtWidgets.QWidget import setStyleSheet [as 别名]
def lock(self):
# Block others screens
desktop = qApp.desktop()
self._blackout.clear()
if desktop.screenCount() > 1:
for d in range(desktop.screenCount()):
if desktop.screenNumber(self) != d:
w = QWidget()
w.setStyleSheet("background: black;")
w.move(desktop.screenGeometry(d).topLeft())
w.showFullScreen()
self._blackout.append(w)
if self.rbtnWordTarget.isChecked():
self._target = self._words + self.spnWordTarget.value()
elif self.rbtnTimeTarget.isChecked():
self.timer.setInterval(self.spnTimeTarget.value() * 1000 * 60)
self.timer.start()
self.timerSec.start()
self.updateBtnText()
self.setEnabled(False)
self.locked.emit()
self.lockChanged.emit(True)
示例4: initView
# 需要导入模块: from PyQt5.QtWidgets import QWidget [as 别名]
# 或者: from PyQt5.QtWidgets.QWidget import setStyleSheet [as 别名]
def initView(self):
'''创建界面'''
scrollArea = QScrollArea(self) # 滚动区域
scrollArea.setWidgetResizable(True)
self.setCentralWidget(scrollArea)
scrollWidget = QWidget()
scrollArea.setWidget(scrollWidget)
gridLayout = QGridLayout(scrollWidget) # 网格布局
# 从QEasingCurve获取所有的type
curve_types = [(n, c) for n, c in QEasingCurve.__dict__.items()
if isinstance(c, QEasingCurve.Type)]
curve_types.sort(key = lambda ct: ct[1])
i = 0
for curve_name, curve_type in curve_types:
index = curve_type % 4
widget = QWidget()
widget.setObjectName("_BorderWidget")
widget.setStyleSheet("QWidget#_BorderWidget{border: 1px solid black;}")
name = QLabel("QEasingCurve." + curve_name, widget)
mpb = MetroProgressCircleBar(widget, curve_type)
layout = QVBoxLayout(widget)
layout.addWidget(name)
layout.addWidget(mpb)
gridLayout.addWidget(widget, i, index, 1, 1)
if index == 3:
i += 1
示例5: _get_combobox
# 需要导入模块: from PyQt5.QtWidgets import QWidget [as 别名]
# 或者: from PyQt5.QtWidgets.QWidget import setStyleSheet [as 别名]
def _get_combobox(self, column, relations, main_window):
"""
Return combobox for foreign fields.
"""
label = column.name
if label.endswith('_id'):
label = label[:-3]
foreign_model = relations.get(label).mapper.class_
items = list(db.SESSION.query(foreign_model).filter(foreign_model.deleted == False))
self.foreigns[column.name] = items
items_labels = [str(i) for i in items]
widget = QWidget()
widget.setStyleSheet('margin:0;')
combo_box = QComboBox()
combo_box.addItems(items_labels)
combo_box.currentIndexChanged.connect(self._check_input)
combo_box.setObjectName(column.name)
hbox = QHBoxLayout()
hbox.setContentsMargins(0, 0, 0, 0)
hbox.setSpacing(0)
hbox.addWidget(combo_box, stretch=95)
for icon, new in zip(('pencil_g.png', 'plus.png'), (False, True)):
b = QPushButton()
b.setObjectName('icon')
b.setIcon(QIcon(os.path.join(options.STATIC_DIR, 'icons', icon)))
b.clicked.connect(functools.partial(
self.open_crud, main_window, foreign_model, new, combo_box))
hbox.addWidget(b, stretch=2)
widget.setLayout(hbox)
return label, widget
示例6: _initUi
# 需要导入模块: from PyQt5.QtWidgets import QWidget [as 别名]
# 或者: from PyQt5.QtWidgets.QWidget import setStyleSheet [as 别名]
def _initUi(self):
self.resize(250, 150)
self.move(300, 300)
self.setWindowTitle("Simple")
layout = QVBoxLayout()
headWidget = QWidget()
headLayout = QHBoxLayout()
headWidget.setLayout(headLayout)
layout.addWidget(headWidget)
edit_icon = QWidget(self)
edit_icon.resize(30,30)
edit_icon.setStyleSheet("background: url(:/images/edit-icon);")
edit_icon.move(20,15)
label = QLabel("Login Form", self)
label.resize(label.sizeHint())
label.move(60,20)
edit = QLineEdit()
edit.setObjectName("username")
edit.setPlaceholderText("username")
layout.addWidget(edit)
edit = QLineEdit()
edit.setObjectName("password")
edit.setPlaceholderText("password")
layout.addWidget(edit)
widget = QWidget()
layout.addWidget(widget)
loginLayout = QHBoxLayout()
loginLayout.setContentsMargins(0,-10,0,0)
loginLayout.setSpacing(30)
widget.setLayout(loginLayout)
# widget.setStyleSheet("background-color:blue")
btn = QPushButton("登录")
loginLayout.addWidget(btn)
btn.clicked.connect(self.login)
btn.setStyleSheet("margin:0;padding:5 0;border:0px;background-color: #26b9a5;color:white;")
btn.setAutoDefault(False)
btn = QPushButton("取消")
loginLayout.addWidget(btn)
btn.clicked.connect(self.close)
btn.setStyleSheet("padding:5px 0;border:0px;background-color: #26b9a5;color:white;")
btn.setAutoDefault(False)
# layout.setContentsMargins(11,11,11,11)
self.setLayout(layout)
示例7: _create_inlite
# 需要导入模块: from PyQt5.QtWidgets import QWidget [as 别名]
# 或者: from PyQt5.QtWidgets.QWidget import setStyleSheet [as 别名]
def _create_inlite(self, settings):
radio = QRadioButton(
'Either my objects are labelled with a barcode not listed above '
'or I would like the performance and reliability of a commercial '
'library')
radio.setChecked('inlite' == settings['engine'])
radio.setEnabled(inlite_available())
self._layout.addWidget(radio)
prompt = QLabel(HTML_LINK_TEMPLATE.format(
'Only available on Windows. '
'Visit <a href="http://www.inliteresearch.com/">Inlite Research</a> '
'to download and install Inlite Research\'s ClearImage library.'
))
prompt.setWordWrap(True)
prompt.setOpenExternalLinks(True)
prompt.setStyleSheet(self.STYLESHEET)
self._layout.addWidget(prompt)
prompt = QLabel('My objects are labelled with:')
format = settings['inlite-format']
radio_1d = QRadioButton('1D barcodes')
radio_1d.setChecked('1d' == format)
radio_datamatrix = QRadioButton('Data Matrix barcodes')
radio_datamatrix.setChecked('datamatrix' == format)
radio_pdf417 = QRadioButton('PDF 417 barcodes')
radio_pdf417.setChecked('pdf417' == format)
radio_qr = QRadioButton('QR codes')
radio_qr.setChecked('qrcode' == format)
layout = QVBoxLayout()
layout.addWidget(prompt)
layout.addWidget(radio_1d)
layout.addWidget(radio_datamatrix)
layout.addWidget(radio_pdf417)
layout.addWidget(radio_qr)
group = QWidget()
group.setLayout(layout)
group.setStyleSheet(self.STYLESHEET)
radio.toggled.connect(group.setEnabled)
group.setEnabled(inlite_available() and 'inlite' == settings['engine'])
self._layout.addWidget(group)
return radio, radio_1d, radio_datamatrix, radio_pdf417, radio_qr
示例8: ColorDialog
# 需要导入模块: from PyQt5.QtWidgets import QWidget [as 别名]
# 或者: from PyQt5.QtWidgets.QWidget import setStyleSheet [as 别名]
class ColorDialog ( QWidget):
def __init__(self ):
super().__init__()
color = QColor(0, 0, 0)
self.setGeometry(300, 300, 350, 280)
self.setWindowTitle('颜色选择')
self.button = QPushButton('Dialog', self)
self.button.setFocusPolicy(Qt.NoFocus)
self.button.move(20, 20)
self.button.clicked.connect(self.showDialog)
self.setFocus()
self.widget = QWidget(self)
self.widget.setStyleSheet('QWidget{background-color:%s} '%color.name())
self.widget.setGeometry(130, 22, 100, 100)
def showDialog(self):
col = QColorDialog.getColor()
if col.isValid():
self.widget.setStyleSheet('QWidget {background-color:%s}'%col.name())
示例9: __init__
# 需要导入模块: from PyQt5.QtWidgets import QWidget [as 别名]
# 或者: from PyQt5.QtWidgets.QWidget import setStyleSheet [as 别名]
def __init__(self, parent, title):
QFrame.__init__(self, parent)
self.setFrameStyle(QFrame.StyledPanel)
titleLabel = QLabel(title, self)
contentPanel = QWidget(self)
contentPanel.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.MinimumExpanding)
self.contentLayout = QHBoxLayout()
self.contentLayout.setContentsMargins(0, 0, 0, 0)
contentPanel.setLayout(self.contentLayout)
# style for the label
titleLabel.setStyleSheet('''.QLabel {
color: #3E6AAA;
}''')
# style for the content panel
contentPanel.setStyleSheet('''.QWidget {
border-bottom-left-radius: 5px;
border-bottom-right-radius: 5px;
background-color: #D6E5F3;
}''')
# style for the whole toolbar
self.setStyleSheet('''TitledToolbar {
background-color:#C1D9F1;
color:#6D6AB7;
border-radius: 5px;
border-style: solid;
border-width: 1px;
border-color: #6D6AB7;
}''')
myLayout = QVBoxLayout()
myLayout.setContentsMargins(0, 0, 0, 0)
self.setLayout(myLayout)
myLayout.addWidget(titleLabel, 0, Qt.AlignHCenter | Qt.AlignTop)
myLayout.addWidget(contentPanel)
示例10: Ui_YaP
# 需要导入模块: from PyQt5.QtWidgets import QWidget [as 别名]
# 或者: from PyQt5.QtWidgets.QWidget import setStyleSheet [as 别名]
class Ui_YaP(object):
def setupUi(self, YaP):
YaP.setGeometry(300, 300, 270, 270)
YaP.setWindowTitle('YaP')
YaP.show()
self.gridLayout_3 = QGridLayout(YaP)
self.gridLayout_3.setObjectName("gridLayout_3")
self.graphicsView = QWidget(YaP)
self.graphicsView.setObjectName("graphicsView")
self.graphicsView.setGeometry(0, 0, 270, 270)
self.graphicsView.setStyleSheet("QWidget { background-color: blue}")
self.gridLayout_3.addWidget(self.graphicsView, 1, 0, 1, 6)
self.btn_save = QPushButton(YaP)
sizePolicy = QSizePolicy(
QSizePolicy.Fixed, QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(
self.btn_save.sizePolicy().hasHeightForWidth())
self.btn_save.setSizePolicy(sizePolicy)
self.btn_save.setMaximumSize(QSize(16777215, 16777215))
self.btn_save.setObjectName("btn_save")
self.gridLayout_3.addWidget(self.btn_save, 2, 3, 1, 1)
示例11: View
# 需要导入模块: from PyQt5.QtWidgets import QWidget [as 别名]
# 或者: from PyQt5.QtWidgets.QWidget import setStyleSheet [as 别名]
class View(QMainWindow) :
signalAdd = pyqtSignal(QMainWindow)
signalButton = pyqtSignal()
signalWidget = pyqtSignal(QMainWindow)
signalDelete = pyqtSignal(QListWidget,QMainWindow)
signalDisplay = pyqtSignal(QMainWindow)
signalSearch = pyqtSignal(QMainWindow)
signalModify = pyqtSignal(QMainWindow)
signalUnlock = pyqtSignal()
def __init__(self):
QMainWindow.__init__(self)
self.setWindowOpacity(0.98)
self.setWindowIcon(QIcon("Pictures/telephone.png"))
self.resize(700,500)
self.setWindowTitle("Annuaire")
self.setStyleSheet("background-color:pink")
self.activeLayout = 0
self.activeButtonAdd = 0
self.activeButtonEdit = 0
self.activeButtonSave = 0
self.alreadyClicked = 0
self.createWidgets()
self.connectWidgets()
def createWidgets(self):
"""Cette fonction permet la création de tous les widgets de la
mainWindow"""
#Création toolbar
toolBar = self.addToolBar("Tools")
#Création bar recherche
self.lineEditSearch = QLineEdit()
self.lineEditSearch.setPlaceholderText("Recherche")
self.lineEditSearch.setStyleSheet("background-color:white")
toolBar.addWidget(self.lineEditSearch)
self.lineEditSearch.setMaximumWidth(300)
#Création séparateur
toolBar.addSeparator()
#Création icon add contact
self.actionAdd = QAction("Ajouter (Ctrl+P)",self)
toolBar.addAction(self.actionAdd)
self.actionAdd.setShortcut("Ctrl+P")
self.actionAdd.setIcon(QIcon("Pictures/sign.png"))
#Création icon delete contact
self.actionDelete = QAction("supprimer (Ctrl+D)",self)
toolBar.addAction(self.actionDelete)
self.actionDelete.setShortcut("Ctrl+D")
self.actionDelete.setIcon(QIcon("Pictures/contacts.png"))
#Création icon quit
self.actionQuitter = QAction("Quitter (Ctrl+Q)",self)
toolBar.addAction(self.actionQuitter)
self.actionQuitter.setShortcut("Ctrl+Q")
self.actionQuitter.setIcon(QIcon("Pictures/arrows.png"))
#Création widget central
self.centralWidget = QWidget()
self.centralWidget.setStyleSheet("background-color:white")
self.setCentralWidget(self.centralWidget)
#Création dockWidget left
dockDisplay = QDockWidget("Répertoire")
dockDisplay.setStyleSheet("background-color:white")
dockDisplay.setFeatures(QDockWidget.DockWidgetFloatable)
dockDisplay.setAllowedAreas(Qt.LeftDockWidgetArea |
Qt.RightDockWidgetArea)
self.addDockWidget(Qt.LeftDockWidgetArea,dockDisplay)
containDock = QWidget(dockDisplay)
dockDisplay.setWidget(containDock)
dockLayout = QVBoxLayout()
displayWidget = QScrollArea()
displayWidget.setWidgetResizable(1)
dockLayout.addWidget(displayWidget)
containDock.setLayout(dockLayout)
#Ajouter la list au dockwidget
self.listContact = QListWidget()
displayWidget.setWidget(self.listContact)
def widgetFormulaire(self) :
"""Fonction donner à la QAction "Ajouter" de la toolbar"""
self.deleteWidget()
#Label prénom/nom
self.labelPictureContact = QLabel("*")
pictureContact = QPixmap("Pictures/avatar.png")
self.labelPictureContact.setPixmap(pictureContact)
#Ajouter prénom
self.nameEdit = QLineEdit()
self.nameEdit.setToolTip("Entrez un prénom sans espace")
#.........这里部分代码省略.........
示例12: Window
# 需要导入模块: from PyQt5.QtWidgets import QWidget [as 别名]
# 或者: from PyQt5.QtWidgets.QWidget import setStyleSheet [as 别名]
class Window(QMainWindow):
def __init__(self, first_player, matrice_jeu):
super(Window, self).__init__()
self.image_pion = {1: "pion1.png", 2: "pion2.png", 11: "chef1.png", 12: "chef2.png", 0: ""}
self.winSize = min(QDesktopWidget().height(), QDesktopWidget().width()) # dim fenetre vs écran
# print("self.winSize ", QDesktopWidget().height())
self.ratioWinVsEcran = 1 # ratio d'occupation de la fenêtre vis à vis de l'écran
self.resize(self.ratioWinVsEcran * self.winSize, self.ratioWinVsEcran * self.winSize)
self.ratio = 0.70 # ratio plateau vs ecran
self.taillePlateau = self.winSize * self.ratio
self.marge = (self.winSize - self.taillePlateau) / 2 # marge fenêtre
self.tailleCase = self.taillePlateau / 8
self.decalage = self.tailleCase / 2
self.setWindowIcon(QIcon(RESSOURCES + "logo_enac.png"))
self.centrerSurEcran()
self.initMenu()
self.jeu = Jeu(first_player, matrice_jeu)
self.affichePlayerCourant(self.jeu.player)
# self.setFixedSize(self.ratioWinVsEcran * self.winSize, self.ratioWinVsEcran * self.winSize) # pour avoir une fenêtre de taille fixée
def initMenu(self):
self.setWindowTitle("Le chemin des chefs - IENAC 15 - Groupe 25")
self.setStatusTip("Cliquer sur le pion à déplacer puis sur la nouvelle position souhaitée.")
self.setWindowIcon(QIcon(RESSOURCES + "logo_enac.png"))
menuFichier = self.menuBar().addMenu("&Fichier")
self.toolbar = self.addToolBar("")
# menu et icône nouvelle partie
actionNouvellePartie = menuFichier.addAction("&Nouvelle partie")
self.toolbar.addAction(actionNouvellePartie)
actionNouvellePartie.setShortcut("Ctrl+N")
actionNouvellePartie.setStatusTip("Nouvelle partie")
actionNouvellePartie.setIcon(QIcon(RESSOURCES + "new.png"))
actionNouvellePartie.triggered.connect(lambda: self.nouvelle_partie())
# menu et icône charger partie
actionChargerPartie = menuFichier.addAction("&Charger une partie")
actionChargerPartie.setIcon(QIcon(RESSOURCES + "folder.png"))
actionChargerPartie.triggered.connect(lambda: self.chargerPartie())
self.toolbar.addAction(actionChargerPartie)
actionChargerPartie.setShortcut("Ctrl+C")
actionChargerPartie.setStatusTip("Charger une partie")
# menu et icône enregistrer partie
actionEnregistrerPartie = menuFichier.addAction("&Enregistrer la partie")
actionEnregistrerPartie.setIcon(QIcon(RESSOURCES + "save.png"))
actionEnregistrerPartie.triggered.connect(lambda: self.enregistrerPartie())
self.toolbar.addAction(actionEnregistrerPartie)
actionEnregistrerPartie.setShortcut("Ctrl+E")
actionEnregistrerPartie.setStatusTip("Sauvegarder la partie")
# menu et icône aide
menuAide = self.menuBar().addMenu("&?")
actionRegle = menuAide.addAction("&Règles du jeu")
actionRegle.setShortcut("Ctrl+R")
actionRegle.setStatusTip("Règles du jeu")
actionRegle.setIcon(QIcon(RESSOURCES + "regle.png"))
actionRegle.triggered.connect(lambda: self.ouvrirFichier("chemin_des_chefs.pdf"))
self.toolbar.addAction(actionRegle)
# menu et icone "recette logicielle"
actionRecette = menuAide.addAction("Recette logicielle")
actionRecette.setStatusTip("Document de recette logicielle")
actionRecette.setIcon(QIcon(RESSOURCES + "recette.png"))
actionRecette.triggered.connect(lambda: self.ouvrirFichier("Recette.ods"))
self.toolbar.addAction(actionRecette)
# menu et icône quitter
actionQuitter = menuFichier.addAction("&Quitter")
actionQuitter.triggered.connect(qApp.quit)
actionQuitter.setIcon(QIcon(RESSOURCES + "exit.png"))
actionQuitter.setShortcut("Ctrl+Q")
actionQuitter.setStatusTip("Quitter l'application")
self.statusBar()
self.toolbar.addAction(actionQuitter)
# Définition du central widget
self.centralWidget = QWidget()
self.setCentralWidget(self.centralWidget)
self.centralWidget.setGeometry(0, 0, self.winSize, self.winSize)
# labels informant qui doit jouer
self.haut = QLabel()
self.haut.setParent(self.centralWidget)
self.haut.setGeometry(self.taillePlateau / 2, self.marge / 3, 250, 20)
self.bas = QLabel()
self.bas.setParent(self.centralWidget)
self.bas.setGeometry(self.taillePlateau / 2, self.winSize - self.marge, 250, 20)
self.information = QLabel()
self.information.setParent(self.centralWidget)
self.information.setGeometry(0, 0, 250, 20)
self.centralWidget.setParent(self)
self.centralWidget.setGeometry(0, 0, self.winSize, self.winSize)
self.centralWidget.setStyleSheet(BLANC)
plateau = Plateau(self)
# plateau.setParent(self.centralWidget)
plateau.setGeometry(self.marge, self.marge, self.taillePlateau, self.taillePlateau)
self.btn = {} # dico des boutons qui effectuent un pavage, ou recouvrement, du plateau
# chaque bouton symbolise une intersection dans la grille constituant le plateau de jeu.
for i in range(0, N):
for j in range(0, N):
button = Button(self, i, j)
# button.setParent(self.centralWidget)
button.setToolTip(str(i) + "_" + str(j))
self.btn[(i, j)] = button
def nouvelle_partie(self):
"""crée un nouveau jeu sans créer une nouvelle fenêtre
#.........这里部分代码省略.........
示例13: PlotWindow
# 需要导入模块: from PyQt5.QtWidgets import QWidget [as 别名]
# 或者: from PyQt5.QtWidgets.QWidget import setStyleSheet [as 别名]
class PlotWindow(QMainWindow):
def __init__(self, map_limits, fig_names, fig_queues):
QMainWindow.__init__(self)
self.setAttribute(Qt.WA_DeleteOnClose)
# self.setWindowTitle("application main window")
self.main_widget = QWidget(self)
self.main_widget.setStyleSheet("* { background-color: white }")
grid = QVBoxLayout(self.main_widget)
grid.setContentsMargins(0, 0, 0, 0)
grid.setSpacing(0)
self.dc = []
self.information_getters = []
self.fig_queues = fig_queues
self.shutdown = Event()
for i in range(len(fig_names)):
shared_object = shared_zeros(map_limits["width"], map_limits["height"])
self.information_getters.append(InformationGetter(queue=fig_queues[i],
shared_object=shared_object,
shutdown=self.shutdown))
self.dc.append(DynamicMplCanvas(self.main_widget, data=shared_object, width=5, height=4,
dpi=100))
label = QLabel(fig_names[i])
label.setStyleSheet("QLabel { background-color: white }")
label.setAlignment(Qt.AlignCenter)
grid.addWidget(label)
grid.addWidget(self.dc[i])
grid.addSpacing(20)
for i in self.information_getters:
i.start()
self.main_widget.setFocus()
self.setCentralWidget(self.main_widget)
timer = QTimer(self)
timer.timeout.connect(self.update_display)
timer.setInterval(0)
timer.start()
self.show()
def update_display(self):
for i in self.dc:
i.update_figure()
# self.label.setText("Trial: {}".format(self.data["trial"]))
def closeEvent(self, event):
self.shutdown.set()
for i in self.fig_queues:
i.put(None)
Event().wait(0.5)
print("Window's dead.")
self.close()
示例14: welcomeui
# 需要导入模块: from PyQt5.QtWidgets import QWidget [as 别名]
# 或者: from PyQt5.QtWidgets.QWidget import setStyleSheet [as 别名]
class welcomeui(QWidget):
def __init__(self, parent=None):
super().__init__()
self.setWindowTitle(self.tr("Welcome Pisi GNU/Linux"))
self.setFixedSize(700, 475)
self.setWindowIcon(QIcon(":/images/pisilinux-welcome.svg"))
self.setLayout(QVBoxLayout())
self.layout().setSpacing(0)
self.layout().setContentsMargins(0, 0, 0, 0)
self.setStyleSheet("QPushButton {border: none; text-align: left; color:black;} QLabel {color:black;}")
x = (QDesktopWidget().width() - self.width()) // 2
y = (QDesktopWidget().height() - self.height()) // 2
self.move(x, y)
# The header code:
self.headerWidget = QWidget()
self.headerWidget.setFixedHeight(80)
self.headerWidget.setLayout(QHBoxLayout())
self.headerWidget.setStyleSheet("background-image:url(:/images/background.png);")
self.layout().addWidget(self.headerWidget)
self.pisiWhiteLogo = QLabel()
self.pisiWhiteLogo.setFixedSize(64, 64)
self.pisiWhiteLogo.setScaledContents(True)
self.pisiWhiteLogo.setPixmap(
QIcon(":/images/pisi-white.svg").pixmap(self.pisiWhiteLogo.size()))
self.headerWidget.layout().addWidget(self.pisiWhiteLogo)
self.pisiTextLabel = QLabel()
self.pisiTextLabel.setFixedSize(157, 48)
self.pisiTextLabel.setScaledContents(True)
self.pisiTextLabel.setPixmap(QPixmap(":/images/pisi-text.png"))
self.headerWidget.layout().addWidget(self.pisiTextLabel)
self.headerWidget.layout().addItem(
QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Expanding))
self.versionLabel = QLabel()
font = self.versionLabel.font()
font.setPointSize(12)
self.versionLabel.setFont(font)
self.versionLabel.setText(
"{} - {}".format(
QSysInfo.productVersion(), QSysInfo.currentCpuArchitecture()))
self.versionLabel.setStyleSheet("color: white; font-weight: bold;")
self.headerWidget.layout().addWidget(self.versionLabel)
# The middle area code:
self.contentWidget = QWidget()
self.contentWidget.setLayout(QVBoxLayout())
self.contentWidget.setStyleSheet("background-color: white;")
self.layout().addWidget(self.contentWidget)
self.meetingLabel = QLabel()
self.meetingLabel.setText(
self.tr("Welcome to Pisi GNU/Linux!"
" Thank you for joining our community!\n\n"
"As Pisi GNU/Linux developers,"
" we hope you enjoy using Pisi GNU/Linux."
" The following links will guide you while"
" using Pisi GNU/Linux. Please do not"
" hesitate to inform about your experiences,"
" suggestions and errors you have encountered."))
self.meetingLabel.setWordWrap(True)
font = self.meetingLabel.font()
font.setPointSize(10)
self.meetingLabel.setFont(font)
self.meetingLabel.setAlignment(Qt.AlignHCenter)
self.meetingLabel.setStyleSheet("color: black;")
self.contentWidget.layout().addWidget(self.meetingLabel)
self.mainLayout = QHBoxLayout()
self.contentWidget.layout().addLayout(self.mainLayout)
vlayoutI = QVBoxLayout()
self.docsHeader = QLabel()
font = self.docsHeader.font()
font.setPointSize(14)
font.setBold(True)
self.docsHeader.setFont(font)
self.docsHeader.setAlignment(Qt.AlignHCenter)
self.docsHeader.setText(self.tr("Documents"))
vlayoutI.addWidget(self.docsHeader)
self.installationDocButton = QPushButton()
self.installationDocButton.setFixedWidth(160)
self.installationDocButton.setCursor(Qt.PointingHandCursor)
self.installationDocButton.setText(self.tr("Installation Guide"))
self.installationDocButton.setIcon(QIcon(':/images/guide.svg'))
self.installationDocButton.setIconSize(QSize(32, 32))
vlayoutI.addWidget(self.installationDocButton)
self.releaseNotesButton = QPushButton()
self.releaseNotesButton.setFixedWidth(160)
self.releaseNotesButton.setCursor(Qt.PointingHandCursor)
#.........这里部分代码省略.........
示例15: setView
# 需要导入模块: from PyQt5.QtWidgets import QWidget [as 别名]
# 或者: from PyQt5.QtWidgets.QWidget import setStyleSheet [as 别名]
def setView(self):
# index = mainWindow().treeRedacOutline.currentIndex()
# Counting the number of other selected items
# sel = []
# for i in mainWindow().treeRedacOutline.selectionModel().selection().indexes():
# if i.column() != 0: continue
# if i not in sel: sel.append(i)
# if len(sel) != 0:
# item = index.internalPointer()
# else:
# index = QModelIndex()
# item = self.mw.mdlOutline.rootItem
# self.currentIndex = index
if self.currentIndex.isValid():
item = self.currentIndex.internalPointer()
else:
item = self.mw.mdlOutline.rootItem
self.updateTabTitle()
def addTitle(itm):
edt = MDEditView(self, html="<h{l}>{t}</h{l}>".format(l=min(itm.level() + 1, 5), t=itm.title()),
autoResize=True)
edt.setFrameShape(QFrame.NoFrame)
self.txtEdits.append(edt)
l.addWidget(edt)
def addLine():
line = QFrame(self.text)
line.setFrameShape(QFrame.HLine)
line.setFrameShadow(QFrame.Sunken)
l.addWidget(line)
def addText(itm):
edt = MDEditView(self,
index=itm.index(),
spellcheck=self.spellcheck,
dict=settings.dict,
highlighting=True,
autoResize=True)
edt.setFrameShape(QFrame.NoFrame)
edt.setStatusTip("{}".format(itm.path()))
self.toggledSpellcheck.connect(edt.toggleSpellcheck, AUC)
self.dictChanged.connect(edt.setDict, AUC)
# edt.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Preferred)
self.txtEdits.append(edt)
l.addWidget(edt)
def addChildren(itm):
for c in range(itm.childCount()):
child = itm.child(c)
if child.isFolder():
addTitle(child)
addChildren(child)
else:
addText(child)
addLine()
def addSpacer():
l.addItem(QSpacerItem(10, 1000, QSizePolicy.Minimum, QSizePolicy.Expanding))
# Display multiple selected items
# if len(sel) > 1 and False: # Buggy and not very useful, skip
# self.stack.setCurrentIndex(1)
# w = QWidget()
# l = QVBoxLayout(w)
# self.txtEdits = []
# for idx in sel:
# sItem = idx.internalPointer()
# addTitle(sItem)
# if sItem.isFolder():
# addChildren(sItem)
# else:
# addText(sItem)
# addLine()
# addSpacer()
# self.scroll.setWidget(w)
if item and item.isFolder() and self.folderView == "text":
self.stack.setCurrentIndex(1)
w = QWidget()
w.setObjectName("editorWidgetFolderText")
l = QVBoxLayout(w)
opt = settings.textEditor
background = (opt["background"] if not opt["backgroundTransparent"]
else "transparent")
w.setStyleSheet("background: {};".format(background))
self.stack.widget(1).setStyleSheet("background: {}"
.format(background))
# self.scroll.setWidgetResizable(False)
self.txtEdits = []
if item != self._model.rootItem:
#.........这里部分代码省略.........