自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Pythpn入門進階系列 - 構(gòu)建一個PyQt應(yīng)用程序示例

開發(fā) 后端
如果您不想編寫代碼來實現(xiàn)應(yīng)用程序的GUI,那么最好安裝Qt Designer并使用它創(chuàng)建一個圖形用戶界面。本教程將逐步介紹用Python創(chuàng)建PyQt應(yīng)用程序的方法。

 PyQt是一個非常有用的Python庫,用于開發(fā)圖形化應(yīng)用程序。它使用C++語言開發(fā)的Python Qt GUI框架??梢酝ㄟ^在Python腳本中導(dǎo)入PyQt庫或使用PyQt的Qt設(shè)計器模塊來開發(fā)應(yīng)用程序的圖形用戶界面。如果您不想編寫代碼來實現(xiàn)應(yīng)用程序的GUI,那么最好安裝Qt Designer并使用它創(chuàng)建一個圖形用戶界面。本教程將逐步介紹用Python創(chuàng)建PyQt應(yīng)用程序的方法。

創(chuàng)建一個簡單的PyQt應(yīng)用程序來求和:

本教程的本節(jié)展示了實現(xiàn)一個簡單的PyQt應(yīng)用程序來計算兩個數(shù)字之和的步驟。在這里,數(shù)字值將使用文本框從用戶處獲取,在執(zhí)行腳本之后,單擊按鈕后將顯示值的總和。在這里創(chuàng)建了一個帶有必要字段的窗口來構(gòu)建應(yīng)用程序的設(shè)計;接下來,使用Python腳本計算和。

步驟:

步驟1:創(chuàng)建PyQt應(yīng)用程序?qū)ο?/strong>

為了設(shè)計本教程的PyQt應(yīng)用程序,您必須導(dǎo)入所需的Python模塊。要設(shè)計這個應(yīng)用程序,它將需要兩個標簽、兩個文本框和一個按鈕。

設(shè)計應(yīng)用程序需要QApplication、QMainWindow、QLabel、QTextEdit和QPushButton模塊。

在腳本的開頭添加以下行以使用這些模塊。 

  1. # 導(dǎo)入必要的模塊  
  2. from PyQt5.QtWidgets import QApplication, QMainWindow, QLabel, QTextEdit, QPushButton 

添加以下幾行以創(chuàng)建應(yīng)用程序?qū)ο蟛邮录h(huán)?,F(xiàn)在執(zhí)行腳本后將不會出現(xiàn)任何內(nèi)容。 

  1. # 創(chuàng)建對象PyQt應(yīng)用程序  
  2. app = QApplication([])  
  3. # 啟動事件循環(huán)以執(zhí)行應(yīng)用程序  
  4. app.exec() 

步驟2:創(chuàng)建類和窗口對象

創(chuàng)建類以在此步驟中添加必要的對象以設(shè)計應(yīng)用程序窗口。

添加以下行以創(chuàng)建帶有窗口對象的類。此處,設(shè)置了窗口的標題,大小和位置。接下來,調(diào)用show()方法以將窗口顯示為輸出。 

  1. class addition(QMainWindow):  
  2.     def __init__(self):  
  3.         # 調(diào)用父構(gòu)造函數(shù)  
  4.         super().__init__()  
  5.         # 設(shè)置窗口標題  
  6.         self.setWindowTitle("PyQt加法應(yīng)用 - Linux迷 www.linuxmi.com")  
  7.         # 設(shè)置窗口的寬度和高度  
  8.         self.resize(850, 500)  
  9.         # 移動窗口的位置  
  10.         self.move(800, 400)  
  11.         # 顯示窗口  
  12.         self.show() 

您必須在運行事件循環(huán)之前創(chuàng)建類的對象。 

  1. # 創(chuàng)建窗口對象  
  2. window = addition() 

執(zhí)行腳本后,將出現(xiàn)以下空白窗口。

步驟3:在窗口中添加所需的小部件以進行添加

現(xiàn)在,添加實現(xiàn)應(yīng)用程序所需的必要對象。在此步驟中,將創(chuàng)建QLabel小部件的三個對象,QTextEdit小部件的兩個對象以及QPushButton小部件的按鈕對象。前兩個標簽對象將用于在文本框之前提供幫助文本。QTextEdit對象將用于從用戶獲取兩個數(shù)字值。將使用下一步將創(chuàng)建的事件處理函數(shù)創(chuàng)建QPushButton對象,以計算輸入數(shù)字的總和。最后一個標簽對象將用于顯示兩個數(shù)字的總和。在這里,將為每個對象調(diào)用setGeometry()函數(shù)以設(shè)置對象在窗口中的位置。   

  1. # 為第一個數(shù)字創(chuàng)建標簽  
  2.    self.lbl1 = QLabel('第一個數(shù)字', self)  
  3.    self.lbl1.setGeometry(200, 120, 160, 50)  
  4.    # 為第一個數(shù)字創(chuàng)建文本框  
  5.    self.textbox1 = QTextEdit(self)  
  6.    self.textbox1.setGeometry(200, 160, 150, 60)  
  7.    # 為第二個數(shù)字創(chuàng)建標簽  
  8.    self.lbl2 = QLabel('第二個數(shù)字', self)  
  9.    self.lbl2.setGeometry(500, 120, 160, 50)  
  10.    # 為第二個數(shù)字創(chuàng)建文本框  
  11.    self.textbox2 = QTextEdit(self)  
  12.    self.textbox2.setGeometry(500, 160, 150, 60)  
  13.    # 創(chuàng)建按鈕以計算總和  
  14.    self.submit = QPushButton('計算總和', self)  
  15.    self.submit.setGeometry(300, 300, 220, 60)  
  16.    # 創(chuàng)建標簽以顯示求和結(jié)果  
  17.    self.lblResult = QLabel('', self)  
  18.    self.lblResult.setGeometry(80, 130, 200, 50) 

執(zhí)行腳本后,將顯示以下輸出。在此步驟中未創(chuàng)建任何事件處理程序函數(shù),該函數(shù)用于計算數(shù)字的總和。因此,如果用戶單擊該按鈕,則不會發(fā)生任何事情。

步驟4:創(chuàng)建并調(diào)用函數(shù)以處理按鈕的click事件

創(chuàng)建一個名為onClicked()的方法,并在附加類中包含以下幾行內(nèi)容來處理按鈕的click事件。使用int()函數(shù)將文本框的值轉(zhuǎn)換為整數(shù),并將其存儲在num1和num2變量中。接下來,將num1和num2之和存儲在結(jié)果變量中。在將值存儲在輸出變量中之前,使用str()函數(shù)將num1,num2和結(jié)果變量的值轉(zhuǎn)換為字符串值。第三個標簽對象用于顯示輸出變量的內(nèi)容。 

  1. def onClicked(self):  
  2.     num1 = int(self.textbox1.toPlainText())  
  3.     num2 = int(self.textbox2.toPlainText())  
  4.     result = num1 + num2  
  5.     output = "<p style='color:red'> " + str(num1) + " 加 " + str(num2) + " 等于 " + str(result) + '</p> 
  6.     self.lblResult.setText(output) 

在按鈕對象之后的類中添加以下行,以在單擊按鈕時調(diào)用onClicked()方法。 

  1. # 單擊按鈕時的調(diào)用功能  
  2. self.submit.clicked.connect(self.onClicked) 

執(zhí)行腳本后,如果用戶在文本框中輸入26和500并單擊“計算總和”按鈕,則以下格式化的輸出將顯示在按鈕下方。

總結(jié):

在本教程中,已經(jīng)從基本內(nèi)容開始對非常簡單的PyQt應(yīng)用程序的實現(xiàn)進行了說明,以幫助新的Python用戶。希望用戶在正確完成并理解本教程的步驟之后,能夠設(shè)計和創(chuàng)建一個簡單的PyQt應(yīng)用程序。 

 

責任編輯:龐桂玉 來源: Linux公社
相關(guān)推薦

2021-07-14 17:39:46

ReactRails API前端組件

2023-09-21 08:00:00

ChatGPT編程工具

2011-05-11 10:58:39

iOS

2010-07-12 10:11:27

ibmdwWeb

2010-01-08 12:14:44

ibmdwAndroid

2018-11-14 19:00:24

PythonRedis共享單車

2019-05-27 13:50:35

多云架構(gòu)企業(yè)多云集成云計算

2023-05-19 08:49:58

SQLAlchemy數(shù)據(jù)庫

2010-08-13 13:05:30

Flex應(yīng)用程序

2011-06-09 09:31:40

Qt 實例

2013-01-11 14:45:43

iOS開發(fā)移動應(yīng)用iPhone

2011-03-14 15:14:10

AzureFacebook營銷式應(yīng)用程序

2011-03-14 14:47:50

2011-03-14 15:10:10

AzureFacebook

2024-06-07 08:25:16

2021-04-03 12:31:48

Python開發(fā)數(shù)據(jù)科學

2020-10-11 20:54:39

Python開發(fā)Docker

2011-03-15 19:45:27

Windows Azu

2009-10-19 14:14:19

OSGi Web應(yīng)用

2022-07-11 10:01:23

Vue 3前端
點贊
收藏

51CTO技術(shù)棧公眾號