pyQt5练习(一)

今天完成了pyQt5的安装,并进行了相关的学习。

主窗口居中显示

#得这整个屏幕的尺寸,和整个窗口的尺寸,然后用整个屏幕的尺寸减去整个窗口的尺寸
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow,QDesktopWidget
from PyQt5.QtGui import QIcon
 
 
class CenterForm(QMainWindow):
    def __init__(self, parent=None):
        super(CenterForm, self).__init__(parent)
 
        # 设置主窗口的标题
        self.setWindowTitle("让窗口居中")
 
        # 设置窗口的尺寸
        self.resize(400, 300)
        print("初始化")
    def center(self):
        #获取屏幕坐标系
        screen = QDesktopWidget().screenGeometry()
        #获取窗口坐标系
        size = self.geometry()
        newLeft = (screen.width()-size.width())/2
        newTop = (screen.height() - size.height()) / 2
        #调用move的方法来移动窗口
        self.move(newLeft,newTop)
        print("移动窗口")
 
if __name__ == '__main__':
    app = QApplication(sys.argv)
    c = CenterForm()
    #main = CenterForm.center(c)  #不调用此函数,窗口依然可以居中
    main.show()
    sys.exit(app.exec_())
 
 
 

点击按钮退出应用程序

import sys
from PyQt5.QtWidgets import QPushButton,QHBoxLayout,QWidget,QApplication, QMainWindow,QDesktopWidget
from PyQt5.QtGui import QIcon
class QuitApplication(QMainWindow):
    #点击按钮,退出应用程序
    def __init__(self):
        super(QuitApplication, self).__init__()
        self.resize(300,120)
        self.setWindowTitle("退出应用程序")
 
        #添加Button
        self.button1 = QPushButton("退出程序")
        #将button与槽绑定
        self.button1.clicked.connect(self.onClick_Button)
 
        #创建水平布局
        layout = QHBoxLayout()
        layout.addWidget(self.button1)  #把button1放在水平布局是哪个
 
        #把水平布局放在主框架上
        mainFrame = QWidget()  #让充满屏幕
        mainFrame.setLayout(layout)
        self.setCentralWidget(mainFrame) #让主框架放在整个窗口上
 
    #按钮单击事件的方法(自定义的槽)
    def onClick_Button(self):
        sender = self.sender()  #通过sender获得button
        print(sender.text()+ "  按钮被按下")  #sender.text()是读取按钮上的内容
        app = QApplication.instance()  #得到一个实例
        #退出应用程序
        app.quit()
 
if  __name__ == '__main__':
    app = QApplication(sys.argv)
    app.setWindowIcon(QIcon('./images/t10.ico'))
    main = QuitApplication()
    main.show()
    sys.exit(app.exec_())
原文地址:https://www.cnblogs.com/tianwenjing123-456/p/14941550.html