数据结构 多线程 scipy 莱斯分布 grails methods reflection node pygame x86 vue原理 河南普通话考试报名 linux 获取系统时间 cad怎么重复上一次命令 h5下拉刷新 oracle可视化工具 js数组截取前5个 idea批量替换快捷键 mysql删除表 python安装mysql python库 python零基础 javalabel java有哪些数据类型 java泛型的使用 linux的find 嵌入式开发教程 电池救星 数据库系统概论第五版 saminside 整站系统 god2iso js分页 小程序开发工具下载 抠图软件免费版 ps去白底 cdlinux教程 kmplayer绿色版 qq农场图标 1500左右性价比最高的手机
当前位置: 首页 > 学习教程  > python

PyQt5 只允许同时启动一个程序

2021/2/6 22:23:43 文章标签: 测试文章如有侵权请发送至邮箱809451989@qq.com投诉后文章立即删除

PyQt5 配置单实例运行,详情配置如下: 1. 创建测试窗体 #-*- coding:utf-8 -*- from PyQt5.QtWidgets import QMainWindow, QApplication from Asimplewindow import Ui_MainWindow import sysclass Main(QMainWindow,Ui_MainWindow):def __init__(self)…

PyQt5 配置单实例运行,详情配置如下:

1. 创建测试窗体

#-*- coding:utf-8 -*-
from PyQt5.QtWidgets import QMainWindow, QApplication
from Asimplewindow import Ui_MainWindow
import sys
 
class Main(QMainWindow,Ui_MainWindow):
  def __init__(self):
    super(Main, self).__init__()
    self.setupUi(self)
 
if __name__ =="__main__":
  app = QApplication(sys.argv)
  main = Main()
  main.show()
  sys.exit(app.exec_())

2. 设置窗口监听

改造上方程序的 name ==“main” 方法

if __name__ =="__main__":
	try:
	   app = QApplication(sys.argv)
	   serverName = 'AppServer'
	   socket = QLocalSocket()
	   socket.connectToServer(serverName)
	   # 判定应用服务是否正常链接,如正常则证明程序实例已经在运行
	   if socket.waitForConnected(500):
	       app.quit()
	   # 如果没有实例运行,则创建应用服务器并监听服务
	   else:
	       localServer = QLocalServer() 
	       localServer.listen(serverName)
	       # 原始处理逻辑
	       main = Main()
		   main.show()
		   sys.exit(app.exec_())
	except Exception as e:
	    print(‘程序启动异常:{}.format(e))

以上为PyQt5配置单实例运行的全部内容,如有问题,请在下方留言。


本文链接: http://www.dtmao.cc/news_show_2000060.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?