zl程序教程

您现在的位置是:首页 >  后端

当前栏目

01-基础创建窗口-python+pycharm实现PyQt5

PythonPycharm基础 实现 创建 窗口 01 PyQT5
2023-09-14 09:15:09 时间

1.创建主窗口

学习笔记:PyQt5教程 来源b站
一起来交流

代码

import sys
from PyQt5.QtWidgets import QMainWindow,QApplication
from PyQt5.QtGui import QIcon

class FirstMainWin(QMainWindow):
    def __init__(self):
        super(FirstMainWin,self).__init__()
        # 设置窗口的标题
        self.setWindowTitle("The first window")
        # 设置窗口尺寸
        self.resize(400,300)
        # 获得状态栏
        self.status=self.statusBar()
        self.status.showMessage("只存在4秒的消息",4000)
if __name__=='__main__':
    app=QApplication(sys.argv)

    # 设置图标
    # app.setWindowIcon(QIcon())
    # 实例化对象
    main=FirstMainWin()
    main.show()
    sys.exit(app.exec_())
实现

在这里插入图片描述

2.窗口居中显示(相对整个屏幕)

代码
import sys
from PyQt5.QtWidgets import QMainWindow,QApplication,QDesktopWidget
from PyQt5.QtGui import QIcon

class FirstMainWin(QMainWindow):
    def __init__(self):
        super(FirstMainWin,self).__init__()

        # 设置窗口的标题
        self.setWindowTitle("The first window")
        # 设置窗口尺寸
        self.resize(400,300)
        # 获得状态栏
        self.status=self.statusBar()
        self.status.showMessage("只存在4秒的消息",4000)
    def center(self):
        # 获取屏幕坐标
        screen=QDesktopWidget().screenGeometry()
        # 获取窗口坐标
        size=self.geometry()
        newLeft=(screen.width()-size.width())/2
        newTop=(screen.height()-size.height())/2
        self.move(newLeft,newTop)
if __name__=='__main__':
    app=QApplication(sys.argv)

    # 设置图标
    # app.setWindowIcon(QIcon())
    # 实例化对象
    main=FirstMainWin()
    # 别忘了调用
    main.center()
    main.show()
    sys.exit(app.exec_())
实现

在这里插入图片描述

3. 退出应用程序

代码
import sys
from PyQt5.QtWidgets import QMainWindow, QApplication,QHBoxLayout,QWidget,QPushButton
from PyQt5.QtGui import QIcon


class QuitApplication(QMainWindow):
    def __init__(self):
        super(QuitApplication, self).__init__()
        # 设置窗口的标题
        self.setWindowTitle("退出应用程序")
        # 设置窗口尺寸
        self.resize(400, 300)

        #添加button
        self.button1=QPushButton("退出程序!")
        # 将信号与槽关联
        self.button1.clicked.connect(self.onClick_Button)
        
        # 将按钮放至窗口中
        # 窗口水平布局
        layout=QHBoxLayout()
        layout.addWidget(self.button1)
        mainFram=QWidget()
        mainFram.setLayout(layout)
        self.setCentralWidget(mainFram)
        
    # 按钮单击事件的方法(自定义槽)
    def onClick_Button(self):
        app=QApplication.instance()
        #退出应用程序
        app.quit()
if __name__ == '__main__':
    app = QApplication(sys.argv)

    # 设置图表
    app.setWindowIcon(QIcon())
    # 实例化对象
    main = QuitApplication()
    main.show()
    sys.exit(app.exec_())
实现

在这里插入图片描述