vì vậy tôi đang tạo một ứng dụng cửa sổ đơn giản với Python và PyQt4. Tôi đã thiết kế giao diện người dùng theo cách tôi muốn trong QtCreator và tôi đã tạo tệp .py cần thiết từ tệp .ui. Khi tôi cố gắng để thực sự mở một thể hiện của cửa sổ tuy nhiên tôi cho các lỗi sau:PyQt4 gặp sự cố khi tạo ứng dụng GUI đơn giản
AttributeError: 'Window' object has no attribute 'setCentralWidget'
Vì vậy, tôi quay trở lại vào tập tin ui_mainwindow.py và nhận xét ra các dòng sau:
MainWindow.setCentralWidget(self.centralWidget)
Bây giờ khi tôi chạy main.py nó sẽ tạo ra một thể hiện của cửa sổ nhưng nó mất bố trí lưới của nó và các yếu tố giao diện người dùng chỉ là loại nổi ở đó. Bất kỳ ý tưởng những gì tôi đang làm sai?
tập tin của tôi main.py:
import sys
from PyQt4.QtGui import QApplication
from window import Window
if __name__ == "__main__":
app = QApplication(sys.argv)
window = Window()
window.show()
sys.exit(app.exec_())
và tập tin window.py tôi:
from PyQt4.QtCore import Qt, SIGNAL
from PyQt4.QtGui import *
from ui_mainwindow import Ui_MainWindow
class Window(QWidget, Ui_MainWindow):
def __init__(self, parent = None):
QWidget.__init__(self, parent)
self.setupUi(self)