前言
Qt Designer是PyQt程序UI界面的實(shí)現(xiàn)工具,Qt Designer工具使用簡(jiǎn)單,可以通過(guò)拖拽和點(diǎn)擊完成復(fù)雜界面設(shè)計(jì),并且設(shè)計(jì)完成的.ui程序可以轉(zhuǎn)換成.py文件供python程序調(diào)用。本文主要通過(guò)用戶登錄需求描述Qt Designer工具開發(fā)界面的使用方法。
開發(fā)工具版本
pyhton3.7.4 + PyQt 5.11.2
Qt Designer工具主界面
打開路徑:${python安裝目錄}/Lib/site-packages/pyqt5_tools/designer.exe。主界面如下:
主界面不同區(qū)域介紹:
工具箱 區(qū)域:提供Gui界面開發(fā)各種基本控件,如單選框、文本框等??梢酝蟿?dòng)到新創(chuàng)建的主程序界面。
主界面區(qū)域:用戶放置各種從工具箱拖過(guò)來(lái)的各種控件。模板選項(xiàng)中最常用的就是Widget(通用窗口)和MainWindow(主窗口)。二者區(qū)別主要是Widget窗口不包含菜單欄、工具欄等??梢苑謩e創(chuàng)建對(duì)比看看。
對(duì)象查看器 區(qū)域:查看主窗口放置的對(duì)象列表。
屬性編輯器 區(qū)域: 提供對(duì)窗口、控件、布局的屬性編輯功能。比如修改控件的顯示文本、對(duì)象名、大小等。
信號(hào)/槽編輯器 區(qū)域:編輯控件的信號(hào)和槽函數(shù),也可以添加自定義的信號(hào)和槽函數(shù)。
Qt Designer基本控件介紹
Widget Box控件工具箱是按照控件作用類別進(jìn)行劃分的。這里作為實(shí)現(xiàn)入門級(jí)界面實(shí)現(xiàn),主要介紹最常使用的控件及控件對(duì)象相關(guān)函數(shù)。函數(shù)方法知道怎么獲取控件輸入內(nèi)容以及如何將后臺(tái)操作結(jié)果輸出到界面控件顯示的主要函數(shù)就可以了。
(1)顯示控件。
Lable:文本標(biāo)簽,顯示文本,可以用來(lái)標(biāo)記控件。
Text Browser:顯示文本控件。用于后臺(tái)命令執(zhí)行結(jié)果顯示。
(2)輸入控件,提供與用戶輸入交互
Line Edit:?jiǎn)涡形谋究颍斎雴涡凶址???丶?duì)象常用函數(shù)為Text() 返回文本框內(nèi)容,用于獲取輸入。setText() 用于設(shè)置文本框顯示。
Text Edit:多行文本框,輸入多行字符串。控件 對(duì)象常用函數(shù)同Line Edit控件。
Combo Box:下拉框列表。用于輸入指定枚舉值。
(3)控件按鈕,供用戶選擇與執(zhí)行
Push Button:命令按鈕。常見的確認(rèn)、取消、關(guān)閉等按鈕就是這個(gè)控件。clicked信號(hào)一定要記住。clicked信號(hào)就是指鼠標(biāo)左鍵按下然后釋放時(shí)會(huì)發(fā)送信號(hào),從而觸發(fā)相應(yīng)操作。
Radio Button:?jiǎn)芜x框按鈕。
Check Box:多選框按鈕。
Qt Designer工具實(shí)現(xiàn)
了解基本控件及作用和獲取輸入/顯示方法后,就可以開始動(dòng)手實(shí)現(xiàn)小需求了。。比如登錄界面。獲取用戶名和密碼并顯示。。
打開Qt Designer,開始拖拽控件實(shí)現(xiàn)吧。。
Step1:打開主界面,選擇Widget模板
Step2:從Widget Box工具箱中拖拽2個(gè)label、2個(gè)line Edit、2個(gè)Push Button以及1個(gè)Text Browser。拖完后如下:
Step3:雙擊各個(gè)控件,修改控件名稱(對(duì)應(yīng)屬性編輯區(qū)中的text,可直接雙擊控件修改)以及對(duì)象名稱(對(duì)應(yīng)屬性編輯區(qū)中的objectName)。對(duì)象名稱一定記得修改。默認(rèn)生成的label_1、label_2這種名稱無(wú)法直接判斷到底是對(duì)應(yīng)哪個(gè)控件。。
點(diǎn)擊菜單欄Form - Prview。預(yù)覽界面實(shí)現(xiàn)效果
login.ui的程序代碼如下:
<?xml version="1.0" encoding="UTF-8"?> <ui version="4.0"> <class>Form</class> <widget class="QWidget" name="Form"> <property name="geometry"> <rect> <x>0</x> <y>0</y> <width>549</width> <height>199</height> </rect> </property> <property name="windowTitle"> <string>用戶登錄</string> </property> <widget class="QLabel" name="user_label"> <property name="geometry"> <rect> <x>50</x> <y>40</y> <width>61</width> <height>21</height> </rect> </property> <property name="text"> <string>用戶名</string> </property> </widget> <widget class="QLineEdit" name="user_lineEdit"> <property name="geometry"> <rect> <x>130</x> <y>40</y> <width>113</width> <height>20</height> </rect> </property> </widget> <widget class="QLabel" name="pwd_label"> <property name="geometry"> <rect> <x>50</x> <y>80</y> <width>54</width> <height>12</height> </rect> </property> <property name="text"> <string>密碼</string> </property> </widget> <widget class="QLineEdit" name="pwd_lineEdit"> <property name="geometry"> <rect> <x>130</x> <y>70</y> <width>113</width> <height>20</height> </rect> </property> </widget> <widget class="QPushButton" name="login_Button"> <property name="geometry"> <rect> <x>50</x> <y>110</y> <width>75</width> <height>23</height> </rect> </property> <property name="text"> <string>登錄</string> </property> </widget> <widget class="QPushButton" name="cancel_Button"> <property name="geometry"> <rect> <x>160</x> <y>110</y> <width>75</width> <height>23</height> </rect> </property> <property name="text"> <string>退出</string> </property> </widget> <widget class="QTextBrowser" name="user_textBrowser"> <property name="geometry"> <rect> <x>270</x> <y>30</y> <width>221</width> <height>101</height> </rect> </property> </widget> </widget> <resources/> <connections/> </ui>
文章標(biāo)題:PyQt圖解QtDesigner工具的使用方法-創(chuàng)新互聯(lián)
轉(zhuǎn)載來(lái)源:http://jinyejixie.com/article28/csosjp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、服務(wù)器托管、關(guān)鍵詞優(yōu)化、網(wǎng)站排名、網(wǎng)站收錄、虛擬主機(jī)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容