限制pyqt5应用程序 只允许打开一次


起因

pyqt5程序创建桌面快捷方式后,多次单击图标 会打开多个UI界面,这种情况肯定是不允许的!

解决

if __name__ == '__main__':
    try:
        app = QtWidgets.QApplication(sys.argv)
        serverName = 'testServer'
        socket = QLocalSocket()
        socket.connectToServer(serverName)
        # 如果连接成功,表明server已经存在,当前已有实例在运行
        if socket.waitForConnected(500):
            app.quit()
        else:
            localServer = QLocalServer()  # 没有实例运行,创建服务器
            localServer.listen(serverName)
            # 处理其他
            mainWindow = MainWindous()
            mainWindow.show()
            sys.exit(app.exec_())
    except:
        pass

参考:
https://blog.csdn.net/zhuoyue008/article/details/82775592


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM