Python GUI QCore.Aplication错误

时间:2015-12-20 17:16:12

标签: user-interface pyqt pyqtgraph qcoreapplication

我曾尝试过有关此问题的各种解决方法,并尝试根据其他示例修复代码,但最终我未能制作出可行的代码。虽然我确实知道它失败的原因,但我缺乏创建有关此错误的解决方法的技巧。你能帮我把这段代码搞定吗?

问题:

然后我按''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()

1 个答案:

答案 0 :(得分:0)

好吧,原来我试图在图形()中打开半新程序。我发现了如何不创建GUI。谢谢你的帮助,但我找到了解决方案。下次我会在onedrive上发布代码或者其他东西,以便人们可以获得整个程序及其支持文档。