import sys
from PySide6 import QtGui
from PySide6.QtWidgets import *
from PySide6.QtGui import QScreen,QIcon,Qt
defaultfont = QtGui.QFont('Arial', 20) #控制self.text()告警窗口文本字体显示的大小
class Mainwindow(QWidget):
def __init__(self, *args, **kwargs) :
super().__init__( *args, **kwargs )
# 窗体标题和尺寸
self.setWindowTitle('功能界面')
# 窗体的尺寸
self.resize(400, 300)
# 窗体位置居中
qr=self.frameGeometry()
center = QScreen.availableGeometry(QApplication.primaryScreen()).center()
qr.moveCenter(center)
#垂直方向的布局,创建布局
layout = QVBoxLayout()
self.layout=layout
self.layout.addLayout(self.head_init())
self.btn.clicked.connect(self.showDialog)
# 给窗体设置元素的排列方式
self.setLayout( layout )
def head_init(self):
header_layout = QHBoxLayout()
self.btn = QPushButton('showDialog')
header_layout.addStretch()
header_layout.addWidget(self.btn)
header_layout.addStretch()
return header_layout
def showDialog(self):
self.msg = msgBox = QMessageBox()
msgBox.setStyleSheet("QLabel{min-width: 100px;}") #可以添加color:red;等属性
msgBox.setFont(defaultfont)
msgBox.setIcon(QMessageBox.Information)
msgBox.setText("Message 1111")
msgBox.setWindowTitle("QMessageBox Example")
msgBox.buttonClicked.connect( self.msgButtonClick )
msgBox.exec()
def msgButtonClick(self):
print(self.msg.text())
if __name__ == '__main__':
app=QApplication( sys.argv )
window = Mainwindow()
# # login.sucess_signal.connect(login.check)
window.show()
sys.exit( app.exec() )