実現したいこと
実行するとウィンドウが開くようにしたい。
発生している問題・分からないこと
エラー
Traceback (most recent call last):
File "/Users/mirai/プログラミング/Mercurial用/qt/GUI(pyQt)/ui_tameshi.py", line 15, in <module>
window = Test()
^^^^^^
File "/Users/mirai/プログラミング/Mercurial用/qt/GUI(pyQt)/ui_tameshi.py", line 10, in init
self.ui.setupUi(self)
File "/Users/mirai/プログラミング/Mercurial用/qt/GUI(pyQt)/ui_tameshi_henkan.py", line 39, in setupUi
MainWindow.setCentralWidget(self.centralwidget)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'Test' object has no attribute 'setCentralWidget'
該当のソースコード
python
1# -*- coding: utf-8 -*- 2 3# Form implementation generated from reading ui file 'tameshi.ui' 4# 5# Created by: PyQt5 UI code generator 5.15.7 6# 7# WARNING: Any manual changes made to this file will be lost when pyuic5 is 8# run again. Do not edit this file unless you know what you are doing. 9 10 11from PyQt5 import QtCore, QtGui, QtWidgets 12 13 14class Ui_MainWindow(object): 15 def setupUi(self, MainWindow): 16 MainWindow.setObjectName("MainWindow") 17 MainWindow.resize(800, 600) 18 self.centralwidget = QtWidgets.QWidget(MainWindow) 19 self.centralwidget.setObjectName("centralwidget") 20 self.label = QtWidgets.QLabel(self.centralwidget) 21 self.label.setGeometry(QtCore.QRect(260, 270, 58, 16)) 22 self.label.setObjectName("label") 23 self.label_2 = QtWidgets.QLabel(self.centralwidget) 24 self.label_2.setGeometry(QtCore.QRect(500, 270, 58, 16)) 25 self.label_2.setObjectName("label_2") 26 self.frame = QtWidgets.QFrame(self.centralwidget) 27 self.frame.setGeometry(QtCore.QRect(200, 110, 171, 151)) 28 self.frame.setFrameShape(QtWidgets.QFrame.StyledPanel) 29 self.frame.setFrameShadow(QtWidgets.QFrame.Raised) 30 self.frame.setObjectName("frame") 31 self.frame_2 = QtWidgets.QFrame(self.centralwidget) 32 self.frame_2.setGeometry(QtCore.QRect(440, 110, 171, 151)) 33 self.frame_2.setFrameShape(QtWidgets.QFrame.StyledPanel) 34 self.frame_2.setFrameShadow(QtWidgets.QFrame.Raised) 35 self.frame_2.setObjectName("frame_2") 36 self.pushButton = QtWidgets.QPushButton(self.centralwidget) 37 self.pushButton.setGeometry(QtCore.QRect(0, 0, 100, 32)) 38 self.pushButton.setObjectName("pushButton") 39 MainWindow.setCentralWidget(self.centralwidget) 40 self.menubar = QtWidgets.QMenuBar(MainWindow) 41 self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 24)) 42 self.menubar.setObjectName("menubar") 43 MainWindow.setMenuBar(self.menubar) 44 self.statusbar = QtWidgets.QStatusBar(MainWindow) 45 self.statusbar.setObjectName("statusbar") 46 MainWindow.setStatusBar(self.statusbar) 47 48 self.retranslateUi(MainWindow) 49 self.pushButton.clicked.connect(self.pushButton.close) # type: ignore 50 QtCore.QMetaObject.connectSlotsByName(MainWindow) 51 52 def retranslateUi(self, MainWindow): 53 _translate = QtCore.QCoreApplication.translate 54 MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow")) 55 self.label.setText(_translate("MainWindow", "画像1")) 56 self.label_2.setText(_translate("MainWindow", "画像2")) 57 self.pushButton.setText(_translate("MainWindow", "閉じる")) 58
python
1import sys 2from PyQt5.QtCore import * 3from PyQt5.QtWidgets import * 4from ui_tameshi_henkan import Ui_MainWindow 5 6class Test(QDialog): 7 def __init__(self,parent=None): 8 super(Test, self).__init__(parent) 9 self.ui = Ui_MainWindow() 10 self.ui.setupUi(self) 11 12 13if __name__ == '__main__': 14 app = QApplication(sys.argv) 15 window = Test() 16 window.show() 17 sys.exit(app.exec_()) 18
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
teratail、googleで探しましたが同様の質問が見つかりませんでした。違うエラーが出ていましたが調べてUi_MainWindowに変更しました。
補足
参考サイト
https://qiita.com/kenasman/items/765457d440b923f4e555
pyQt5
macM1
Qtdesigner
pyuic5

回答1件
あなたの回答
tips
プレビュー