pyqt 程序重启实现

方式1

import sys, os

from PyQt5.QtCore import QProcess
from PyQt5.QtWidgets import QWidget, QPushButton, QApplication, qApp

cur_dir = os.path.dirname(sys.argv[0])
if cur_dir == "":
    cur_dir = '.'


class MyWin(QWidget):

    def __init__(self):
        super().__init__()
        self.btn = QPushButton(self, text="重启")
        self.btn.clicked.connect(self.restart)

    def restart(self):
        qApp.quit()
        QProcess.startDetached(qApp.applicationFilePath(), [os.path.join(cur_dir, '1.py')])


if __name__ == '__main__':
    app = QApplication(sys.argv)
    mywin = MyWin()
    mywin.show()
    sys.exit(app.exec())

方式2

import sys
from PyQt5.QtWidgets import QWidget, QPushButton, QApplication, qApp




class MyWin(QWidget):

    def __init__(self):
        super().__init__()
        self.btn = QPushButton(self, text="重启")
        self.btn.clicked.connect(self.restart)

    def restart(self):
        # self.close()
        qApp.exit(current_exit_code)


if __name__ == '__main__':
    current_exit_code = 1002457844
    app = QApplication(sys.argv)
    while True:
        mywin = MyWin()
        mywin.show()
        code = app.exec()
        if code != current_exit_code:
            break
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
PyQt是一个用于创建图形用户界面(GUI)应用程序Python绑定库。它基于Qt框架,提供了丰富的GUI组件和功能,使开发者能够轻松地创建跨平台的应用程序PyQt程序接口主要包括以下几个方面: 1. QWidget类:QWidget是PyQt中所有用户界面对象的基类,它提供了窗口的基本功能,如窗口标题、大小、位置等。通过继承QWidget类,可以创建自定义的窗口。 2. Layout布局管理器:PyQt提供了多种布局管理器,用于自动调整窗口中的控件位置和大小。常用的布局管理器有QVBoxLayout(垂直布局)、QHBoxLayout(水平布局)和QGridLayout(网格布局)等。 3. 控件(Widget):PyQt提供了丰富的控件,用于构建用户界面。常见的控件包括按钮(QPushButton)、标签(QLabel)、文本框(QLineEdit)、复选框(QCheckBox)、下拉列表(QComboBox)等。每个控件都有自己的属性和信号槽,可以通过设置属性和连接信号槽来实现交互功能。 4. 事件处理:PyQt使用事件驱动的方式处理用户交互。每个控件都可以接收和处理各种事件,如鼠标点击、键盘输入等。通过重写事件处理函数,可以实现对事件的响应和处理。 5. 信号与槽机制:PyQt使用信号与槽机制实现控件之间的通信。控件可以发出信号,其他控件可以连接到这些信号上,并在接收到信号时执行相应的槽函数。通过信号与槽的连接,可以实现控件之间的交互和数据传递。 6. 绘图和绘图设备:PyQt提供了绘图功能,可以在窗口中绘制各种图形、图像和文本。绘图设备包括QPainter(绘图工具)、QPen(画笔)和QBrush(画刷)等。 以上是PyQt程序接口的一些主要内容,通过使用这些接口,开发者可以创建出功能丰富、交互友好的GUI应用程序

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值