【发布时间】:2017-04-14 03:15:39
【问题描述】:
我是 PyGt 中一个完全的新手程序员。我已经阅读了有关 PyGt4 的书,但现在我们有了 PyGt5,我无法从书中运行我的示例。
例如,这是书中的第一个例子(最简单的)你可以看到
from PyQt5 import QtCore, QtGui
书上写着
from PyQt4 import QtCore, QtGui
但我写了 PyQt5,因为我只有 PyQt5
# -*- coding: utf-8 -*-
from PyQt5 import QtCore, QtGui
import sys
app = QtGui.QApplication(sys.argv)
window = QtGui.QWidget()
window.setWindowTitle("The first program in PyQt")
window.resize(300, 70)
label = QtGui.QLabel("<center>Hello, world!</center>")
btnQuit = QtGui.QPushButton("&Close window")
vbox = QtGui.QVBoxLayout()
vbox.addWidget(label)
vbox.addWidget(btnQuit)
window.setLayout(vbox)
QtCore.QObject.connect(btnQuit, QtCore.SIGNAL("clicked()"),
QtGui.qApp, QtCore.SLOT("quit()"))
window.show()
sys.exit(app.exec_())
错误:AttributeError:模块“PyQt5.QtGui”没有属性“QApplication”
我正在尝试寻找解决方案: 我试图运行这段代码。不工作。我的程序可以运行,但我无法关闭“关闭窗口”按钮
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5 import QtCore, QtGui
from PyQt5.QtCore import QObject, pyqtSignal
from PyQt5.QtWidgets import *
import sys
app = QApplication(sys.argv)
window = QWidget()
window.setWindowTitle("The first example in PyQt")
window.resize(300, 70)
label = QLabel("<center>Hello, world!</center>")
btnQuit = QPushButton("&Close window")
vbox = QVBoxLayout()
vbox.addWidget(label)
vbox.addWidget(btnQuit)
window.setLayout(vbox)
closed = pyqtSignal()
range_changed = pyqtSignal(int, int, name='rangeChanged')
valueChanged = pyqtSignal([int], ['QString'])
window.show()
sys.exit(app.exec_())
【问题讨论】:
-
一般情况下:检查 (Py)Qt5 的文档并搜索缺失的类。它可能只是在另一个模块中。