亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python與QT聯(lián)合的詳細步驟記錄

 更新時間:2024年12月31日 09:10:18   作者:m0_63098318  
這篇文章主要介紹了python與QT聯(lián)合的詳細步驟,文章還展示了如何在Python中調(diào)用QT的.ui文件來實現(xiàn)GUI界面,并介紹了多窗口的應用,文中通過代碼介紹的非常詳細,需要的朋友可以參考下

一、文章簡介

python適合做一些后臺處理的相關任務、但再實際應用過程中往往需要搭配一個GUI圖形化界面共同使用。在python中含有pyqt庫,通過pyqt庫的調(diào)用可以實現(xiàn)GUI界面的功能,但是在使用pyqt5構建GUI的過程中對界面組件的布局往往需要通過函數(shù)進行設置,博主再使用過程中感到非常麻煩與不便,因此決定使用通過python調(diào)用QT的.ui文件,通過.ui文件進行設置GUI組件布局,使用python進行數(shù)據(jù)的處理與函數(shù)邏輯的編寫。

優(yōu)點:QT Designer設計GUI布局美觀、便利,python編程簡易。

前置:python(或pycharm)、QT(Qt Creator 或Qt Designer)

二、安裝pyqt5

pip install PyQt5

雖然博主使用QT進行GUI頁面的構建,但是內(nèi)部的一些邏輯采用python進行編寫,因此仍然需要使用pyqt5。(有人可能會說“既然還是需要下載pyqt5,為什么不直接使用pyqt5”,還是上面的話,QT設計GUI布局美觀,在ui文件中使用拖拽的方式更加直觀了解成型的GUI界面情況,便于調(diào)整)

三、GUI頁面設計

使用Qt Designer創(chuàng)建一個窗口,并添加一些組件。(本文僅作為基礎因此進行簡易的設計)

四、python的使用

python文件創(chuàng)建

在test1.ui文件夾內(nèi)創(chuàng)建.py文件(便于后續(xù)調(diào)用)。

python程序的編寫

import sys
from PyQt5 import uic
from PyQt5.QtWidgets import *
#上述為需要調(diào)的庫
class MainWindow(QWidget):
    #初始化函數(shù)
    def __init__(self):
        super(MainWindow, self).__init__()
        self.init_ui()#ui窗口文件
        self.i = 0 #點擊次數(shù)
    def init_ui(self):
        self.Firstui = uic.loadUi("test1.ui")#首先讀取.ui文件
        self.push = self.Firstui.pushButton#將ui中的賦值 
        self.label = self.Firstui.label_2
        #按鍵的按下信號槽
        self.push.clicked.connect(self.on_push)

    #按鍵的槽函數(shù)
    def on_push(self, index):
        self.i=self.i+1
        self.label.setText("點擊第"+str(self.i)+"次")

if __name__ == '__main__':
    app = QApplication(sys.argv)
    Window = MainWindow()
    Window.Firstui.show()
    app.exec_()

五、多窗口的應用

GUI設計

python編程

import sys
from PyQt5 import uic
from PyQt5.QtWidgets import *
#上述為需要調(diào)的庫
class MainWindow(QWidget):
    #初始化函數(shù)
    def __init__(self):
        super(MainWindow, self).__init__()
        self.init_ui()#ui窗口文件
        self.i = 0 #點擊次數(shù)
    def init_ui(self):
        self.Firstui = uic.loadUi("test1.ui")#首先讀取.ui文件
        self.push = self.Firstui.pushButton#將ui中的賦值
        self.push_2 = self.Firstui.pushButton_2
        self.label = self.Firstui.label_2 # 將ui中的賦值
        #按鍵的按下信號槽
        self.push.clicked.connect(self.on_push)

        self.push_2.clicked.connect(self.on_push2)
    #按鍵的槽函數(shù)
    def on_push(self, index):
        self.i=self.i+1
        self.label.setText("點擊第"+str(self.i)+"次")

    def on_push2(self, index):
        self.Firstui.close()
        Window2.Firstui.show()

class MainWindow2(QWidget):
    #初始化函數(shù)
    def __init__(self):
        super(MainWindow2, self).__init__()
        self.init_ui()#ui窗口文件

    def init_ui(self):
        self.Firstui = uic.loadUi("test2.ui")#首先讀取.ui文件

if __name__ == '__main__':
    app = QApplication(sys.argv)
    Window = MainWindow()
    Window2 = MainWindow2()
    Window.Firstui.show()
    app.exec_()

與一個窗口的區(qū)別在于當觸發(fā)特定按鍵時利用.close()關閉當前窗口同時使用.show對實例化的窗口對象進行.shou()打開。值得注意的是 .Firstui代表窗口,調(diào)用其他窗口是要使用類名.Firstui進行調(diào)用。

因為本文針對的是如何使用python調(diào)用QT的教程,因此對QT中一些其他的信號、組件及更多GUI界面的操作不做過多介紹。

總結

到此這篇關于python與QT聯(lián)合的文章就介紹到這了,更多相關python與QT聯(lián)合內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Python中的hypot()方法使用簡介

    Python中的hypot()方法使用簡介

    這篇文章主要介紹了Python中的hypot()方法使用簡介,是Python入門所需掌握的基礎知識,需要的朋友可以參考下
    2015-05-05
  • django js實現(xiàn)部分頁面刷新的示例代碼

    django js實現(xiàn)部分頁面刷新的示例代碼

    今天小編就為大家分享一篇django js實現(xiàn)部分頁面刷新的示例代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • 基于Python實現(xiàn)文本文件轉Excel

    基于Python實現(xiàn)文本文件轉Excel

    Excel文件是我們常用的一種文件,在工作中使用非常頻繁。Excel中有許多強大工具,因此用Excel來處理文件會給我們帶來很多便捷。本文就來和大家分享一下Python實現(xiàn)文本文件轉Excel的方法,感興趣的可以了解一下
    2022-08-08
  • Python數(shù)據(jù)可視化之畫圖

    Python數(shù)據(jù)可視化之畫圖

    今天小編就為大家分享一篇關于Python數(shù)據(jù)可視化之畫圖,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • pytorch+sklearn實現(xiàn)數(shù)據(jù)加載的流程

    pytorch+sklearn實現(xiàn)數(shù)據(jù)加載的流程

    這篇文章主要介紹了pytorch+sklearn實現(xiàn)數(shù)據(jù)加載,之前在訓練網(wǎng)絡的時候加載數(shù)據(jù)都是稀里糊涂的放進去的,也沒有理清楚里面的流程,今天整理一下,加深理解,也方便以后查閱,需要的朋友可以參考下
    2022-11-11
  • Python實現(xiàn)奇數(shù)列與偶數(shù)列調(diào)換的方法詳解

    Python實現(xiàn)奇數(shù)列與偶數(shù)列調(diào)換的方法詳解

    這篇文章主要為大家詳細介紹了如何利用Python實現(xiàn)df的奇數(shù)列與偶數(shù)列調(diào)換位置,比如A列,B列,調(diào)換成B列,A列,感興趣的小伙伴可以了解一下
    2022-05-05
  • Python中如何生成GeoJSON數(shù)據(jù)

    Python中如何生成GeoJSON數(shù)據(jù)

    這篇文章主要介紹了Python中生成GeoJSON數(shù)據(jù),無論使用geojson庫還是geopandas庫,都可以生成包含地理空間數(shù)據(jù)的GeoJSON文件,文中介紹了使用這些庫生成GeoJSON數(shù)據(jù)的簡單示例,需要的朋友可以參考下
    2023-10-10
  • python中如何寫類

    python中如何寫類

    在本篇文章里小編給大家分享的是一篇關于python中寫類的方法和技巧,需要的朋友們可以學習下。
    2020-06-06
  • 學習Python selenium自動化網(wǎng)頁抓取器

    學習Python selenium自動化網(wǎng)頁抓取器

    本篇文章給大家介紹了Python selenium自動化網(wǎng)頁抓取器的實例應用以及知識點分析,有需要的參考學習下。
    2018-01-01
  • python自動化UI工具發(fā)送QQ消息的實例

    python自動化UI工具發(fā)送QQ消息的實例

    今天小編就為大家分享一篇python自動化UI工具發(fā)送QQ消息的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08

最新評論