您好,登錄后才能下訂單哦!
本節(jié)我們學(xué)習(xí)QDialog的使用,在主頁(yè)面點(diǎn)擊按鈕彈出一個(gè)新的Dialog。
窗口是GUI設(shè)計(jì)中不可獲取的一部分,方便用戶和程序直接交互,簡(jiǎn)化使用;Qdialog主要包含QInputDialog、QColorDialog、QFontDialog、QFileDialog等。
Dialog中常用方法如下:
打開designer.exe,使用默認(rèn)的Main Window創(chuàng)建,直接點(diǎn)擊Create按鈕即可
設(shè)計(jì)主頁(yè)面如下,并保存為dialog.ui
設(shè)計(jì)彈出新頁(yè)面如下,保存為dilog_new.ui
進(jìn)入run.py目錄,輸入pyuic5 -o ui_dialog.py dialog.ui
pyuic5 -o ui_dialog_new.py dialog_new.ui
#?encoding=utf-8
import?sys
import?PyQt5.QtWidgets?as?qw
import?dialog
import?dialog_new
class?myForm(qw.QWidget,?dialog.Ui_Form1):
????def?__init__(self):
????????super().__init__()
????????self.setupUi(self)
????def?close_w1(self):
????????self.close()
class?myFormNew(qw.QWidget,?dialog_new.Ui_Form2):
????def?__init__(self):
????????super().__init__()
????????self.setupUi(self)
if?__name__?==?'__main__':
????app?=?qw.QApplication(sys.argv)
????w1?=?myForm()
????w2?=?myFormNew()
????w1.show()
????def?show_w2():
????????w2.show()
????#?w1.pushButton.clicked.connect(w1.close_w1)
????w1.pushBu![](https://s1.51cto.com/images/blog/202002/02/0bd04cd1c4175196558cdce3090d9f98.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)tton.clicked.connect(show_w2)
????app.exec_()
上述程序?qū)⒅黜?yè)面的pushButton的clicked信號(hào),和show_w2()槽函數(shù)關(guān)聯(lián),點(diǎn)擊按鈕,會(huì)彈出新設(shè)計(jì)的dialog_new頁(yè)面,同時(shí)dialog頁(yè)面存在,推出dialog_new頁(yè)面后,會(huì)返回dialog頁(yè)面,如果打開程序中注釋內(nèi)容,點(diǎn)擊按鈕,彈出dilog_new頁(yè)面出來(lái)的時(shí)候會(huì)刪除dialog頁(yè)面。
進(jìn)入文件目錄,輸入python3 run.py,即可彈出上述用QT Designer設(shè)計(jì)出來(lái)的dialog頁(yè)面。
點(diǎn)擊點(diǎn)我按鈕
如您在使用過(guò)程中有任何問(wèn)題,請(qǐng)加QQ群進(jìn)一步交流,也可以github提Issue。
QQ交流群:906015840 (備注:物聯(lián)網(wǎng)項(xiàng)目交流)
獲取源碼:關(guān)注公眾號(hào),回復(fù)pyqt5即可
一葉孤沙出品:一沙一世界,一葉一菩提
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。