最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解Python Qt的窗體開發(fā)的基本操作

 更新時間:2019年07月14日 14:53:00   作者:大盜梁  
這篇文章主要介紹了詳解Python Qt的窗體開發(fā)的基本操作,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

本文章采用的是Qt4,是python(x,y) 套件中集成的,為啥不集成Qt5呢,懶得裝啊:)

正文:

首先看成品:

這個程序的功能是輸入原價和降價的百分比,計算出最后的價格。

設(shè)計器部分

然后就是開發(fā)階段了,首先在Qt Designer中建立一個窗體,大概像圖片中的樣子,然后將控件都拖進(jìn)去

其中,“原價是多少啊”,“綠色的標(biāo)標(biāo)”這些文字類的控件是QLabel,第一個框框是QTextEdit,第二個標(biāo)標(biāo)是QDoubleSpinBox,或者使用QSpinBox都行,兩者主要是數(shù)字類型的不同,

提交按鈕是QPushButton,這里主要是想嘗試一下不同的控件,接下來點擊在圖片框上的QLabel,然后在屬性編輯器中將objectName命名為 labelResult ,QTextEdit命名為textPrice,QDoubleSpinBox

命名為dSBPer ,QPushButton命名為btnSub如圖:

這樣的命名方式并沒有什么特殊含義,只不過能夠讓鄙人記得更牢一些,以防止程序打到一半來回的看設(shè)計器。

這里有個比較麻煩的東西 ------------ 圖片框

圖片顯示本身是QLabel,所以顯示圖片需要先在設(shè)計器中放置一個QLbel控件,改控件在程序中沒有改動,所以名字默認(rèn)就好,接下來還需要在資源管理器中添加資源文件,如圖:

在Qt設(shè)計器中,只需在QLabel控件的pixmap屬性中載入即可,支持的文件可訪問Qt的文檔,我會在文章后面貼出

值得注意的是,資源文件在程序中的使用需要編譯為.py文件

編譯的代碼如下:

pyrcc4 -o a1_rc.py a1.qrc

程序部分

現(xiàn)在就開始程序部分的編輯了

第一步先導(dǎo)入有關(guān)Qt的庫

import sys
from PyQt4 import QtCore,QtGui,uic

然后創(chuàng)建Window初始化

qtCreatorFile = "" #.ui Window File

Ui_MainWindow,QtBaseClass = uic.loadUiType(qtCreatorFile)

接下來是基礎(chǔ)類的編寫

class MyApp(QtGui.QMainWindow,Ui_MainWindow):
  def __init__(self):
    QtGui.QMainWindow.__init__(self)
    Ui_MainWindow.__init__(self)
    self.setupUi(self)
    self.btnSub.clicked.connect(self.CalculateTax)

其中"self.btnSub.clicked.connect(self.CalculateTax)"中,btnSub是按鈕的名稱,clicked.connect是按鈕的點擊事件要執(zhí)行的函數(shù)的連接,CalculateTax是我自己寫的點擊的函數(shù),他將會在按鈕被點擊后調(diào)用

if __name__ == "__main__":
  app = QtGui.QApplication(sys.argv)
  window = App()
  window.show()
  sys.exit(app.exec_())

這一行在主程序中,是程序執(zhí)行時顯示窗體的操作

接下來就開始寫CalculateTax(self)函數(shù)了,它放在App類中:

def CalculateTax(self):
    price = int(self.textPrice.toPlainText())
    tax = float(self.dSBPer.value())
    total_price = price-((tax/100)*price)
    total_price_string = u"你要記得你要花多少錢,預(yù)計的價格很便宜?。?+str(total_price) +u"塊"+"\n"+u"看到?jīng)]有,還不快買"
    self.labelResult.setText(total_price_string )

"textPrice.toPlainText()"其中textPrice是控件的名稱,toPlainText()是控件的方法,這是獲取控件的文本內(nèi)容,函數(shù)具體的詳細(xì)信息可以在Qt文檔中查詢,后面控件同理

有一點是在Qt中,如果中文顯示亂碼,需要將中文轉(zhuǎn)為指定的編碼,具體情況需要看程序的編碼,在本代碼中字符串前加u可直接轉(zhuǎn)碼。

# -*- coding: UTF-8 -*-

import sys
from PyQt4 import QtCore,QtGui,uic



qtCreatorFile = "untitled.ui" #Window File

Ui_MainWindow,QtBaseClass = uic.loadUiType(qtCreatorFile)

class App(QtGui.QMainWindow,Ui_MainWindow):
  def __init__(self):
    QtGui.QMainWindow.__init__(self)
    Ui_MainWindow.__init__(self)
    self.setupUi(self)
    self.btnSub.clicked.connect(self.CalculateTax)

  def CalculateTax(self):
    price = int(self.textPrice.toPlainText())
    tax = float(self.dSBPer.value())
    total_price = price-((tax/100)*price)
    total_price_string = u"你要記得你要花多少錢,預(yù)計的價格很便宜?。?+str(total_price) +u"塊"+"\n"+u"看到?jīng)]有,還不快買"
    self.labelResult.setText(total_price_string )
    
    
    
if __name__ == "__main__":
  app = QtGui.QApplication(sys.argv)
  window = App()
  window.show()
  sys.exit(app.exec_())

后面附上Qt官方文檔網(wǎng)頁:

http://doc.qt.io/qt-5/classes.html

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • python畫折線圖的程序

    python畫折線圖的程序

    這篇文章主要為大家詳細(xì)介紹了python畫折線圖的方法,一個畫折線圖的程序具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-07-07
  • python入門之基礎(chǔ)語法學(xué)習(xí)筆記

    python入門之基礎(chǔ)語法學(xué)習(xí)筆記

    學(xué)習(xí)python過程中需要了解的一些基礎(chǔ)語法特整理一下方便更開始接觸python的朋友
    2020-02-02
  • 如何運用sklearn做邏輯回歸預(yù)測

    如何運用sklearn做邏輯回歸預(yù)測

    這篇文章主要介紹了如何運用sklearn做邏輯回歸預(yù)測問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Python中暫存上傳圖片的方法

    Python中暫存上傳圖片的方法

    這篇文章主要介紹了Python中暫存上傳圖片的方法,本文使用cStringIO模塊實現(xiàn)暫存功能,本文給出簡單使用示例,需要的朋友可以參考下
    2015-02-02
  • Django 簡單實現(xiàn)分頁與搜索功能的示例代碼

    Django 簡單實現(xiàn)分頁與搜索功能的示例代碼

    這篇文章主要介紹了Django 簡單實現(xiàn)分頁與搜索功能的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • python?Prophet時間序列預(yù)測工具庫使用功能探索

    python?Prophet時間序列預(yù)測工具庫使用功能探索

    Python?Prophet是一個強(qiáng)大的時間序列預(yù)測工具,由Facebook開發(fā),具有易用性和高度可定制性的特點,本文將深入介紹Python?Prophet的基本概念、安裝方法以及如何使用它進(jìn)行時間序列預(yù)測,并提供豐富的示例代碼來幫助大家入門
    2024-01-01
  • python中pyplot直方圖的繪制方式

    python中pyplot直方圖的繪制方式

    這篇文章主要介紹了python中pyplot直方圖的繪制方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • 基于Python預(yù)測一下世界杯最后贏家

    基于Python預(yù)測一下世界杯最后贏家

    四年一度的世界杯已經(jīng)開始了,對于不少熱愛足球運動的球迷來說,這可是十分難得的盛宴。今天小編就通過Python數(shù)據(jù)分析以及機(jī)器學(xué)習(xí)等方式來預(yù)測一下誰能獲得最后的冠軍,感興趣的可以了解一下
    2022-11-11
  • 最新解決'nvidia-smi' 不是內(nèi)部或外部命令也不是可運行的程序

    最新解決'nvidia-smi' 不是內(nèi)部或外部命令也不是可運行的程序

    使用cmd查看電腦顯卡的信息,調(diào)用nvidia-smi查看顯卡使用情況報錯,提示'nvidia-smi' 不是內(nèi)部或外部命令,也不是可運行的程序,本文給大家分享完美解決方案,感興趣的朋友跟隨小編一起看看吧
    2023-01-01
  • Python partial函數(shù)原理及用法解析

    Python partial函數(shù)原理及用法解析

    這篇文章主要介紹了Python partial函數(shù)原理及用法解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-12-12

最新評論

明水县| 莱芜市| 洛南县| 余庆县| 杭锦后旗| 思南县| 惠来县| 安陆市| 含山县| 上栗县| 顺义区| 华蓥市| 临沧市| 盐源县| 诏安县| 衡南县| 合阳县| 云阳县| 金湖县| 芒康县| 溧水县| 望江县| 宣城市| 平原县| 彭泽县| 土默特左旗| 苍南县| 长宁区| 台安县| 清河县| 富民县| 积石山| 巍山| 宁强县| 田林县| 仁化县| 山东省| 全南县| 正镶白旗| 科技| 绿春县|