Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
User interface Python GUI QCore.application错误_User Interface_Pyqt_Pyqtgraph_Qcoreapplication - Fatal编程技术网

User interface Python GUI QCore.application错误

User interface Python GUI QCore.application错误,user-interface,pyqt,pyqtgraph,qcoreapplication,User Interface,Pyqt,Pyqtgraph,Qcoreapplication,我曾尝试过解决这个问题的各种方法,并试图根据其他示例修复代码,但最终未能生成可行的代码。虽然我确实知道它失败的原因,但我缺乏创建解决此错误的方法的技能。你能帮我使这个代码正常工作吗 问题是: 然后我按下“Duomenųapdorojimas”并继续按下“Pavaizduoti信号ą”,我得到的错误是:QCoreApplication::exec:事件循环已在运行。我尝试了各种解决方法,一些遗留代码留在了我的函数中。稍后我会整理和优化我的代码,我只需要知道如何正确使用GUI来避免这个问题。如果需要

我曾尝试过解决这个问题的各种方法,并试图根据其他示例修复代码,但最终未能生成可行的代码。虽然我确实知道它失败的原因,但我缺乏创建解决此错误的方法的技能。你能帮我使这个代码正常工作吗

问题是:

然后我按下“Duomenųapdorojimas”并继续按下“Pavaizduoti信号ą”,我得到的错误是: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或其他地方发布代码,以便人们获得整个程序及其支持文档。

graphics()的功能是什么?graphics()是一个打开单独图形窗口的函数。这就是问题的症结所在,因为这里的程序崩溃是因为我试图打开第二个QCore.Application循环或其他什么。嗯,如果问题的解决方案不清楚,我想我会发布整个代码,而不是让你编译。错误信息似乎很清楚。在某个地方,您的代码再次调用
QApplication.exec()
(注意,第一个调用在
run
函数中)。这大概发生在
graphics()
中。在不知道什么是
图形
的情况下,除了鼓励您进一步了解
QApplication
实例并重构您的应用程序,以避免尝试创建2个和启动2个事件循环之外,我们无法提供太多帮助。感谢您的帮助,并对响应延迟表示抱歉。假期真的打乱了我很长一段时间的日程安排。