国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

PyQT實(shí)現(xiàn)多窗口切換

2020-02-22 23:45:52
字體:
供稿:網(wǎng)友

最近做個(gè)軟件,用PyQT寫的,在實(shí)現(xiàn)菜單欄點(diǎn)擊彈出新窗口的時(shí)候嚴(yán)重被卡殼,發(fā)現(xiàn)用WxPython的思想和方式來做完全無法實(shí)現(xiàn)。PyQT的中文資料實(shí)在是太少了。看了點(diǎn)英文資料和QT的資料,逆推PyQT的實(shí)現(xiàn)方法,總算搞定。下面是一個(gè)小demo。

主界面的代碼如下所示:

# -*- coding: utf-8 -*-  from PyQt4 import QtCore, QtGui from dialog1 import Dialog1 from dialog2 import Dialog2 import sys  try:   _fromUtf8 = QtCore.QString.fromUtf8 except AttributeError:   def _fromUtf8(s):     return s  try:   _encoding = QtGui.QApplication.UnicodeUTF8   def _translate(context, text, disambig):     return QtGui.QApplication.translate(context, text, disambig, _encoding) except AttributeError:   def _translate(context, text, disambig):     return QtGui.QApplication.translate(context, text, disambig)    class MainWindow(QtGui.QWidget):       dialog1_signal = QtCore.pyqtSignal()     #定義一個(gè)無參數(shù)的信號,串口設(shè)定與子站初始化信號   dialog2_signal = QtCore.pyqtSignal()     #定義一個(gè)無參數(shù)的信號,串口設(shè)定與子站初始化信號   exit_signal = QtCore.pyqtSignal()     #定義一個(gè)無參數(shù)的信號,串口設(shè)定與子站初始化信號      def __init__(self):     super(MainWindow,self).__init__()        def setupUi(self, Form):     Form.setObjectName(_fromUtf8("Form"))     Form.resize(400, 300)     self.form = Form     self.pushButton = QtGui.QPushButton(Form)     self.pushButton.setGeometry(QtCore.QRect(70, 90, 75, 23))     self.pushButton.setObjectName(_fromUtf8("pushButton"))     self.pushButton_2 = QtGui.QPushButton(Form)     self.pushButton_2.setGeometry(QtCore.QRect(240, 90, 75, 23))     self.pushButton_2.setObjectName(_fromUtf8("pushButton_2"))     self.pushButton_3 = QtGui.QPushButton(Form)     self.pushButton_3.setGeometry(QtCore.QRect(150, 160, 75, 23))     self.pushButton_3.setObjectName(_fromUtf8("pushButton_3"))     self.label = QtGui.QLabel(Form)     self.label.setGeometry(QtCore.QRect(170, 40, 54, 16))     self.label.setObjectName(_fromUtf8("label"))      self.retranslateUi(Form)     QtCore.QMetaObject.connectSlotsByName(Form)      #信號連接到指定槽     self.pushButton.clicked.connect(self.on_pushButton_clicked)     self.pushButton_2.clicked.connect(self.on_pushButton_2_clicked)     self.pushButton_3.clicked.connect(self.on_pushButton_3_clicked)             def retranslateUi(self, Form):     Form.setWindowTitle(_translate("Form", "Form", None))     self.pushButton.setText(_translate("Form", "進(jìn)入dialog1", None))     self.pushButton_2.setText(_translate("Form", "進(jìn)入dialog2", None))     self.pushButton_3.setText(_translate("Form", "退出", None))     self.label.setText(_translate("Form", "主窗體", None))        def on_pushButton_clicked(self):     self.form.hide()     Form1 = QtGui.QDialog()     ui = Dialog1()     ui.setupUi(Form1)     Form1.show()     Form1.exec_()     self.form.show()    def on_pushButton_3_clicked(self, Form):     #QtCore.QObject.connect( self.pushButton_3, QtCore.SIGNAL("clicked()"), self, QtCore.SLOT(quit()))     #也可以這樣     self.form.close()        def on_pushButton_2_clicked(self):     self.form.close()     Form1 = QtGui.QDialog()     ui = Dialog2()     ui.setupUi(Form1)     Form1.show()     Form1.exec_()     self.form.show()  if __name__ == '__main__':   app = QtGui.QApplication(sys.argv)   Form = QtGui.QWidget()   window = MainWindow()    window.setupUi(Form)   Form.show()     sys.exit(app.exec_())       pass             
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 井研县| 克拉玛依市| 锡林郭勒盟| 沿河| 弥渡县| 平果县| 和顺县| 洛隆县| 江阴市| 上蔡县| 内江市| 仙居县| 柳州市| 广安市| 德江县| 贵德县| 罗山县| 宁武县| 堆龙德庆县| 阳山县| 安丘市| 库伦旗| 石楼县| 蕲春县| 当雄县| 定襄县| 九江县| 麻栗坡县| 山东| 保德县| 怀柔区| 新宾| 仙居县| 洮南市| 吴桥县| 台安县| 正镶白旗| 盘山县| 武陟县| 晋中市| 南乐县|