My PyQtアプリケーションはエラー(stderr?)をコンソールに出力しなくなりました。PyQt:出口でエラーmsg(トレースバック)がありません
私はQtDesignerを使用して、このようにUIをインポートします。
from PyQt5 import QtCore, QtGui, QtWidgets
import sys
from PyQt5.uic import loadUiType
Ui_MainWindow, QMainWindow = loadUiType("test.ui")
class Main(QMainWindow, Ui_MainWindow):
"""Main window"""
def __init__(self,parent=None):
super(Main, self).__init__(parent)
self.setupUi(self)
self.pushButton.clicked.connect(self.testfunc)
def testfunc(self):
print(9/0)
if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
main = Main()
main.show()
sys.exit(app.exec_())
test.uiはのQPushButtonとラベルが含まれています。 Qt以外のアプリケーションでtestfunc(明らかにエラーが発生します)を呼び出すと、エラーメッセージ、トレースバックなどが表示されます。このコードを実行すると、終了します。
QtDesignerを使わずにPyQtアプリケーションを作成し、期待どおりにエラーをコンソールに出力しました。 QtDesignerと継承の違いは何ですか?
プリコンパイルされたバイナリを使ってPyQtをインストールしましたか、それとも自分でコンパイルしましたか? –
私はこのプリコンパイルされた64ビットバイナリを使用しました:https://riverbankcomputing.com/software/pyqt/download5 – Jannis
私はそれが問題だと思います。私は非常に同じ問題を抱えていたので、ソースからPyQt5を再インストールし、mingw32を使ってコンパイルして、すべてが現在動作しています。 –