欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

pyqt5對用qt designer設(shè)計的窗體實現(xiàn)彈出子窗口的示例

 更新時間:2019年06月19日 10:59:39   作者:wzxxtt62267018  
今天小編就為大家分享一篇pyqt5對用qt designer設(shè)計的窗體實現(xiàn)彈出子窗口的示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

1. 用qt designer編寫主窗體,窗體類型是MainWindow,空白窗口上一個按鈕。并轉(zhuǎn)換成mainWindow.py

# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file 'f.ui'
#
# Created by: PyQt5 UI code generator 5.9
#
# WARNING! All changes made in this file will be lost!
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_MainWindow(object):
  def setupUi(self, MainWindow):
    MainWindow.setObjectName("MainWindow")
    MainWindow.resize(800, 600)
    self.centralwidget = QtWidgets.QWidget(MainWindow)
    self.centralwidget.setObjectName("centralwidget")
    self.pushButton = QtWidgets.QPushButton(self.centralwidget)
    self.pushButton.setGeometry(QtCore.QRect(80, 90, 75, 23))
    self.pushButton.setObjectName("pushButton")
    MainWindow.setCentralWidget(self.centralwidget)
    self.retranslateUi(MainWindow)
    QtCore.QMetaObject.connectSlotsByName(MainWindow)
  def retranslateUi(self, MainWindow):
    _translate = QtCore.QCoreApplication.translate
    MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
    self.pushButton.setText(_translate("MainWindow", "PushButton"))

2. 用qt designer編寫子窗體,窗體類型是Dialog, 空白窗口上一個按鈕。并轉(zhuǎn)換成childWindow.py

from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_Dialog(object):
  def setupUi(self, Dialog):
    Dialog.setObjectName("Dialog")
    Dialog.resize(400, 300)
    self.pushButton = QtWidgets.QPushButton(Dialog)
    self.pushButton.setGeometry(QtCore.QRect(160, 100, 75, 23))
    self.pushButton.setObjectName("pushButton")
    Dialog.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint)  #設(shè)置窗體總顯示在最上面
    self.retranslateUi(Dialog)
    QtCore.QMetaObject.connectSlotsByName(Dialog)
  def retranslateUi(self, Dialog):
    _translate = QtCore.QCoreApplication.translate
    Dialog.setWindowTitle(_translate("Dialog", "Dialog"))
    self.pushButton.setText(_translate("Dialog", "PushButton"))

3,編寫調(diào)用程序,這個重點,

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QDialog
from dust.mainWindow import *
from dust.childWindow import *

if __name__ == '__main__':
  app = QApplication(sys.argv)
  #實例化主窗口 
  main = QMainWindow() 
  main_ui = Ui_MainWindow()
  main_ui.setupUi(main )
  #實例化子窗口 
  child = QDialog()      
  child_ui = Ui_Dialog()
  child_ui.setupUi(child)
  
  #按鈕綁定事件
  btn = main_ui.pushButton
  btn.clicked.connect( child.show ) 
  
  #顯示
  main.show()
  sys.exit(app.exec_())

4. 上面的程序只是能顯示了,要想添加自定義事件,還不行,加自定義事件,有一個辦法是再封裝一個類,主窗體和子窗體都如此。

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QDialog
from dust.mainWindow import *
from dust.childWindow import *

#mainWindow
class MyMainWindow(QMainWindow, Ui_MainWindow):
  def __init__(self):
    super(MyMainWindow,self).__init__()
    self.setupUi(self)
    
    self.setGeometry(0, 0, 1024, 600)
    self.setWindowTitle('main window')
        
    
  def paintEvent(self, event):
    painter = QPainter(self)
    pixmap = QPixmap("./image/bg.jpg")
    painter.drawPixmap(self.rect(),pixmap)
  
     
  def keyPressEvent(self, e):
     
    if e.key() == Qt.Key_Escape:
      self.close()

class ChildWindow(QDialog, Ui_Dialog):
  def __init__(self):
    super(ChildWindow,self).__init__()
    self.setupUi(self)
    
    self.setWindowTitle('child window')
    
    self.pushButton.clicked.connect( self.btnClick) #按鈕事件綁定

  def btnClick(self): #子窗體自定義事件
    self.close()

if __name__ == '__main__':
  app = QApplication(sys.argv)
   
  main = MyMainWindow()
   
  child = ChildWindow()  
  
  btn = main.pushButton    #主窗體按鈕事件綁定
  btn.clicked.connect( child.show ) 
  
  main.show()
  sys.exit(app.exec_())

以上這篇pyqt5對用qt designer設(shè)計的窗體實現(xiàn)彈出子窗口的示例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python基于Logistic回歸建模計算某銀行在降低貸款拖欠率的數(shù)據(jù)示例

    Python基于Logistic回歸建模計算某銀行在降低貸款拖欠率的數(shù)據(jù)示例

    這篇文章主要介紹了Python基于Logistic回歸建模計算某銀行在降低貸款拖欠率的數(shù)據(jù),結(jié)合實例形式分析了Python基于邏輯回歸模型的數(shù)值運算相關(guān)操作技巧,需要的朋友可以參考下
    2019-01-01
  • python?管理系統(tǒng)實現(xiàn)mysql交互的示例代碼

    python?管理系統(tǒng)實現(xiàn)mysql交互的示例代碼

    這篇文章主要介紹了python?管理系統(tǒng)實現(xiàn)mysql交互,本文通過實例代碼圖文相結(jié)合給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-12-12
  • python使用PIL實現(xiàn)多張圖片垂直合并

    python使用PIL實現(xiàn)多張圖片垂直合并

    這篇文章主要為大家詳細介紹了python使用PIL實現(xiàn)多張圖片垂直合并,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • python中的全局變量與局部變量解讀

    python中的全局變量與局部變量解讀

    這篇文章主要介紹了python中的全局變量與局部變量用法,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • 10行Python代碼實現(xiàn)Web自動化管控的示例代碼

    10行Python代碼實現(xiàn)Web自動化管控的示例代碼

    這篇文章主要介紹了10行Python代碼實現(xiàn)Web自動化管控的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • Flask中嵌套啟動子線程的方法示例詳解

    Flask中嵌套啟動子線程的方法示例詳解

    這篇文章主要為大家介紹了Flask中嵌套啟動子線程的方法示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-01-01
  • 使用python實現(xiàn)離散時間傅里葉變換的方法

    使用python實現(xiàn)離散時間傅里葉變換的方法

    這篇文章主要介紹了使用python實現(xiàn)離散時間傅里葉變換的方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • python中f字符串f-string用法詳解

    python中f字符串f-string用法詳解

    f-string用大括號{}表示被替換字段,其中直接填入替換內(nèi)容,本文給大家介紹python中f字符串f-string用法詳解,感興趣的朋友一起看看吧
    2023-10-10
  • 基于SQLAlchemy實現(xiàn)操作MySQL并執(zhí)行原生sql語句

    基于SQLAlchemy實現(xiàn)操作MySQL并執(zhí)行原生sql語句

    這篇文章主要介紹了基于SQLAlchemy實現(xiàn)操作MySQL并執(zhí)行原生sql語句,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-06-06
  • Python OpenCV實現(xiàn)基本圖形繪制

    Python OpenCV實現(xiàn)基本圖形繪制

    這篇文章主要介紹了Python OpenCV實現(xiàn)基本圖形繪制,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04

最新評論