簡體   English   中英

Python GUI QCore.Aplication錯誤

[英]Python GUI QCore.Aplication error

我嘗試了有關此問題的各種解決方法,並嘗試根據其他示例修復代碼,但最終我未能制作出可行的代碼。 盡管我確實知道為什么它會失敗,但是我缺乏針對此錯誤創建解決方法的技能。 您能否幫助我使此代碼正常工作?

問題:

然后按“Duomenųapdorojimas”,然后按“ Pavaizduotisignalą”,我得到一個錯誤消息:QCoreApplication :: exec:事件循環已在運行。 我嘗試了各種解決方法,一些遺留代碼留在了我的函數中。 稍后,我將整理和優化代碼,我只需要知道如何正確使用GUI來避免此問題。 如果需要,我將向您發送帶有txt文件的整個程序,但這部分至關重要,因此會出現問題。

import os
import os.path
from pyqtgraph.Qt import QtGui, QtCore
import numpy as np
import pyqtgraph as pg
from tkinter import *
import tkinter.messagebox
import sys
from functools import partial
import matplotlib.pyplot as p

class Window(QtGui.QMainWindow):

def __init__(self):

    super(Window, self).__init__()
    self.setGeometry(50, 50, 500, 300)
    self.setWindowTitle("")
    self.setWindowIcon(QtGui.QIcon('pythonlogo.png'))

    openFile = QtGui.QAction("&Atverkite duomenų failą", self)
    openFile.setShortcut("Ctrl+Q")
    openFile.setStatusTip('Duomenų failas')
    openFile.triggered.connect(self.file_open)

    extractAction = QtGui.QAction("&Duomenys iš Arduino", self)
    extractAction.setShortcut("Ctrl+W")
    extractAction.setStatusTip('Prijunkite iš Arduino ateinančius duomenis')
    extractAction.triggered.connect(self.upload_usb)

    saveFile = QtGui.QAction("&Įšsaugoti failą", self)
    saveFile.setShortcut("Ctrl+E")
    saveFile.setStatusTip('Nurodykite failo direktoriją bei pavadinimą')
    saveFile.triggered.connect(self.file_save)

    quitFile = QtGui.QAction("&Išeiti", self)
    quitFile.setShortcut("Ctrl+R")
    quitFile.setStatusTip('Programa bus uždaryta')
    quitFile.triggered.connect(self.close_application)

    openEditor = QtGui.QAction("&Skaitytuvas", self)
    openEditor.setShortcut("Ctrl+T")
    openEditor.setStatusTip('Skaitytuvas visados įjungtas')
    openEditor.triggered.connect(self.editor)

    additionalData = QtGui.QAction("&Paciento duomenys", self)
    additionalData.setShortcut("Ctrl+A")
    additionalData.setStatusTip('Įveskite paciento amžiaus grupę')
    additionalData.triggered.connect(self.group)

    dataProcessing = QtGui.QAction("&Filtruoti signalą", self)
    dataProcessing.setShortcut("Ctrl+S")
    dataProcessing.setStatusTip('Bus atliekami signalo apdorojimo procesai')
    dataProcessing.triggered.connect(self.editor)

    showGraph = QtGui.QAction("&Pavaizduoti signalą", self)
    showGraph.setShortcut("Ctrl+D")
    showGraph.setStatusTip('Bus atvaizduotas šiuo metu turimas signalas')
    showGraph.triggered.connect(self.close_application)

    mainMenu = self.menuBar()

    fileMenu = mainMenu.addMenu('&Progamos funkcijos')
    fileMenu.addAction(openFile)
    fileMenu.addAction(extractAction)
    fileMenu.addAction(saveFile)
    fileMenu.addAction(quitFile)

    resultsMenu = mainMenu.addMenu("&Duomenų apdorojimas")
    resultsMenu.addAction(dataProcessing)
    resultsMenu.addAction(showGraph)

    editorMenu = mainMenu.addMenu("&Programos nustatymai")
    editorMenu.addAction(openEditor)
    editorMenu.addAction(additionalData)

    self.statusBar()
    self.home()

def openFile(self,n):
    print(n)

def home(self):
    self.show()

def close_application(self):
    graphics()
    sys.exit()

def run():
    app = QtGui.QApplication(sys.argv)
    GUI = Window()
    sys.exit(app.exec_())

run()

好吧,事實證明我正在嘗試在graphics()中打開半新程序。 我發現了如何不創建GUI。 謝謝您的幫助,但我已經找到解決方案。 下次,我將在onedrive或其他內容中發布代碼,以便人們獲得帶有其支持文檔的整個程序。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM