您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關Python中怎么實現在主窗口中調用對話框,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
根據本篇的最終目標——在主窗口中調用對話窗口,我們先使用qt設計師創建兩個窗口,其中一個主窗口MainWindows,一個含有兩個按鈕的對話窗口Dialog。
通過qt設計師新建一個MainWindows窗口,并在其中放置一個按鈕:
保存為UI文件,再新建一個對話窗口:
同樣保存為UI文件。
這樣我們本地文件夾有兩個可供轉換為Python代碼的UI文件:
保存好兩個窗口的UI文件之后,我們繼續使用pyuic5工具,將這兩個UI文件轉換為Python代碼文件。
打開命令行輸入:
運行一下轉換出來的Python文件,是否正常:
一切正常,接下來我們可以進行兩個窗口的連接和調用了。
在進行下一步之前,我們先在主窗口mainWindow中添加一個文本標簽,設置文本為空,字體加大:
有個這個label我們可以將對對話框的操作,反饋在label標簽中。保存UI文件,使用pyuic5重新轉換一次Python代碼。
為了在主窗口代碼中調用對話框窗口,我們需要在mainWindow.py文件中引入對話框窗口:
然后定義在主窗口的主類中定義一個方法,用來顯示對話框窗口:
定義好了方法,我們需要對按鈕進行點擊調用的綁定,這在setupUi()方法中進行設置:
這樣就實現了按鈕點擊綁定對話框:
我們知道,我們的對話框是有兩個按鈕的,一個“OK”,一個“Cancel”,在我們的GUI程序中,點擊任意一個都會關閉對話框,效果似乎是一樣的,但在PyQt5的內部機制的,這是兩個不同的事件,下面我們就通過之前設置的label標簽,展示其不同的機制。
我們修改一下click_button()方法,修改如下:
在這里我們將對話框的運行賦值給了一個變量,然后將其與QtWidgets.QDialog.Accepted進行比較,QtWidgets.QDialog.Accepted表示的是對話框的接收事件,也就是“OK”代表的事件,如果為接收時間,設置label標簽為“點擊了OK”,否則設置label標簽為“點擊了Cannel”
上述就是小編為大家分享的Python中怎么實現在主窗口中調用對話框了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。