class MyWindow(QtWidgets.QMainWindow,Ui_MainWindow): def __init__(self): super(MyWindow,self).__init__() self.setupUi(self) def slot1(self): self.textEdit.setText("hello 111") def openDialog(self): self.dlg = my_Dialog() self.dlg.exec_() #pyqt5下,dialog用exec_()方法 def openWidget(self): #self.hide() self.wid = my_widgets() self.wid.show() #pyqt5下,widgets用show()方法 if __name__ == "__main__": app = QtWidgets.QApplication(sys.argv) mainWindow = MyWindow() mainWindow.show() sys.exit(app.exec_())

1 pyqt5下,dialog用exec_()方法,widget用show()方法;

2 引用UI文件类及其函数定义的时候,注意类的名字不要搞混了:

class MyWindow(QtWidgets.QMainWindow,Ui_MainWindow)

实例化类名(继承的qt类,自己编辑的类)

@[TOC]( PyQT 5 主 窗口 打开 新窗口 (帮助文档)) 在学习基于 PyQt 5写软件界面的帮助文档时,帮助文档或按钮 出的 新窗口 界面想实现的QMessageBox的效果。即 出的界面不关闭则不能操作主 窗口 ,因为对Python和 PyQt 5并不是很熟悉,所以废了一番周折,查帮助文档 QMessageBox 继承自 QDialog,那么如果界面继承自 QDialog 可否实现 呢? 貌似是可以的! 界面UI转py 首先基于Qt Designer 制作一个主界面和一个帮助 窗口 并转成.py 主界面UI 在按键处显示 窗口 ,关键之处在于获取按键在桌面的位置。我们可以先通过self.x()/self.y()获取 窗口 相对于桌面的位置,然后在获取按键相对于 窗口 的位置,将对应坐标相加就是按键相对于桌面的大致位置了。 新窗口 的位置会随着按键的位置而变化,但总是在按键的下方 from PyQt 5.QtCore import * from PyQt 5.QtWidgets im...
目标:通过点击主 窗口 的button 出另一个 窗口 页面。 首先需要注意的是,两个 窗口 不能是同一类型,否则会崩溃,并保存为名称不同的ui文件,并使用UIC工具转成.py文件。 因此在目前文件夹 既有mainwindow又有dialog窗体形式的界面代码。(这一切都按照常规的操作来!!!没有变化!!!) 关键的地方是驱动函数main.py 1、将主 窗口 与子 窗口 各自实例化在parentWindo...