導航:首頁 > 編程語言 > python的gui界面各類控制項

python的gui界面各類控制項

發布時間:2022-12-11 22:49:51

⑴ 八款常用的 python GUI 開發框架推薦

作為Python開發者,你遲早都會用到圖形用戶界面來開發應用。本文將推薦一些 Python GUI 框架,希望對大家有所幫助。

Python 的 UI 開發工具包 Kivy

https://www.oschina.net/p/kivy

Kivy是一個開源工具包能夠讓使用相同源代碼創建的程序能跨平台運行。它主要關注創新型用戶界面開發,如:多點觸摸應用程序。Kivy還提供一個多點觸摸滑鼠模擬器。當前支持的平台包括:Linux、Windows、Mac OS X和Android。

Kivy擁有能夠處理動畫、緩存、手勢、繪圖等功能。它還內置許多用戶界面控制項如:按紐、攝影機、表格、Slider和樹形控制項等。

Python 的 GUI 開發工具 Flexx

https://www.oschina.net/p/flexx

Flexx 是一個純 Python 工具包,用來創建圖形化界面應用程序。其使用 Web 技術進行界面的渲染。你可以用 Flexx 來創建桌面應用,同時也可以導出一個應用到獨立的 HTML 文檔。因為使用純 Python 開發,所以 Flexx 是跨平台的。只需要有 Python 和瀏覽器就可以運行。如果是使用桌面模式運行,推薦使用 Firefox 。

Qt 庫的 Python 綁定 PyQt

https://www.oschina.net/p/pyqt

PyQt是Qt庫的Python版本。PyQt3支持Qt1到Qt3。 PyQt4支持Qt4。它的首次發布也是在1998年,但是當時它叫 PyKDE,因為開始的時候SIP和PyQt沒有分開。PyQt是用SIP寫的。PyQt 提供 GPL版和商業版。

Python圖形開發包 wxPython

https://www.oschina.net/p/wxpython

wxPython 是 Python 語言的一套優秀的 GUI 圖形庫,允許 Python 程序員很方便的創建完整的、功能鍵全的 GUI 用戶界面。 wxPython 是作為優秀的跨平台 GUI 庫 wxWidgets 的 Python 封裝和 Python 模塊的方式提供給用戶的。

就如同Python和wxWidgets一樣,wxPython也是一款開源軟體,並且具有非常優秀的跨平台能力,能夠運行在32位windows、絕大多數的Unix或類Unix系統、Macintosh OS X上。

Tk 圖形用戶界面 Tkinter

https://www.oschina.net/p/tkinter

Tkinter(也叫Tk介面)是Tk圖形用戶界面工具包標準的Python介面。Tk是一個輕量級的跨平台圖形用戶界面(GUI)開發工具。Tk和Tkinter可以運行在大多數的Unix平台、Windows、和Macintosh系統。

Tkinter 由一定數量的模塊組成。Tkinter位於一個名為_tkinter(較早的版本名為tkinter)的二進制模塊中 。Tkinter包含了對Tk的低 級介面模塊,低級介面並不會被應用級程序員直接使用,通常是一個共享庫(或DLL),但是在一些情況下它也被Python解釋器靜態鏈接。

Pywin32

https://www.oschina.net/p/pywin32

Windows Pywin32允許你像VC一樣的形式來使用PYTHON開發win32應用。代碼風格可以類似win32 sdk,也可以類似MFC,由你選擇。如果你仍不放棄vc一樣的代碼過程在python下,那麼這就是一個不錯的選擇。

Python 圖形界面開發包 PyGTK

https://www.oschina.net/p/pygtk

PyGTK讓你用Python輕松創建具有圖形用戶界面的程序.底層的GTK+提供了各式的可視元素和功能,如果需要,你能開發在GNOME桌面系統運行的功能完整的軟體.

PyGTK真正具有跨平台性,它能不加修改地,穩定運行各種操作系統之上,如Linux,Windows,MacOS等.除了簡單易用和快速的原型開發能力外,PyGTK還有一流的處理本地化語言的獨特功能.

用python快速開發絢麗桌面程序 pyui4win

https://www.oschina.net/p/py-ui4win

pyui4win是一個開源的採用自繪技術的界面庫。支持C++和python。用它可以很容易實現QQ和360安全衛士這樣的絢麗界面。而且,pyui4win有所見即所得界面設計器,讓C++開發人員和python開發人員直接用設計工具設計界面,而不用關心界面如何生成和運行,可以顯著縮短界面開發時間。在pyui4win中,界面甚至可以完全交給美工去處理,開發人員可以只負責處理業務邏輯,把開發人員徹底從繁雜的界面處理中解放出來。

以上就是為大家分享的八款常用的python GUI開發框架推薦,希望能對你有幫助。更多python學習資料,可以關注「武漢千鋒」微信公眾號。

⑵ Python如何進行GUI桌面開發有哪些不錯的庫可以推薦

Python進行GUI開發的庫其實很多,下面我簡單介紹幾個不錯的庫,感興趣的朋友可以自己嘗試一下,實驗環境win10+python3.6+pycharm5.0,主要內容如下:
tkinter
這個就不用多說了,python自帶的GUI開發標准庫,對於開發小型簡單的應用來說,完全可以了,開源、跨平台,使用起來非常方便,下面我簡單測試一下,主要代碼如下:

點擊運行程序,效果如下,一個窗口一個Label標簽:

easygui
這個是基於tkinter的一個窗口GUI庫,可以快速創建窗口對話框,包括常見的登陸對話框、注冊對話框等,下面我簡單介紹一下這個庫的安裝和使用:

1.首先,安裝easygui,這個直接在cmd窗口輸入安裝命令「pip install easygui」就行,如下:

2.安裝完成後,我們就可以直接編寫代碼進行測試了,主要代碼如下,非常簡單:

點擊運行這個程序,效果如下:

kivy
這是一個跨平台的GUI應用程序開發庫,可以用來開發安卓、蘋果應用,一套程序,可以處處運行,下面我簡單介紹一下這個庫的安裝和使用:

1.首先,安裝kivy,這個直接按官方教程安裝就行,如下:

2.安裝完成後,就可以直接編寫代碼進行測試了,主要代碼如下,非常簡單:

點擊運行程序,效果如下,這里你可以將其打包為手機應用,安裝到手機上:

wxpython
這也是一個免費、跨平台的Python GUI開發庫,相比較前面的tkinter來說,功能更為強大,控制項也更多,下面我簡單介紹一下這個庫的安裝和使用:

1.首先,安裝wxpython,這個也直接在cmd窗口輸入命令「pip install wxpython」就行,如下:

2.安裝完成後,我們就可以直接編寫相關代碼進行測試了,主要代碼如下,非常簡單,一個簡單的文本編輯器:

點擊運行這個程序,效果如下:

pyqt
這個Qt的一個Python介面庫,藉助於Qt強大的用戶界面,Python也可以快速開發出GUI程序,組件更多,也更方便,只要你有一定的Qt基礎,很快就能掌握這個庫的使用,下面我簡單介紹一下這個庫的安裝和使用:

1.首先,安裝pyqt,這個直接在cmd窗口輸入安裝命令「pip install pyqt5」就行,如下,安裝需要稍微等待一會兒:

2.安裝完成後,我們就可以直接編寫代碼進行測試了,如下,一個簡單的計算器:

點擊運行這個程序,效果如下:

至此,我們就介紹完了這5個Python GUI庫。總的來說,這5個庫使用起來都非常不錯,如果你的應用界面比較簡單,功能要求不高,可以選擇tkinter和easygui,如果界面比較復雜,功能要求比較復雜,可以考慮使用wxpython或pyqt,當然,你也可以使用其他GUI庫,像pygame等,根據實際項目需求而定,網上也有相關資料和教程,感興趣的話,可以搜一下,希望以上分享的內容能對你有所幫助吧,也歡迎大家評論、留言。

python簡單的GUI界面化的有內置的模塊tkinter相對來說簡單,但是做出來的界面也簡單。目前市場上用的多的還是QT吧!python有的QT是pyqt5當前使用比較多。如果用的pycharm開發工具也可以進行配置進行開發,最好的用eric專門開發PYQT的軟體。

⑶ 如何使用pyQT做pythonGUI界面

步驟如下:
在開始菜單所有應用中找到PyQt文件夾下的Designer,雙擊打開。
新建窗體對話框選擇「Dialog without Buttons」,點擊創建按鈕。
在左側控制項欄中拖入一個Label和一個Line Edit並將其選中後進行拖動復制位三個。再從左側拖入一個 PushButton按鈕。
雙擊Label和PushButton控制項,輸入名稱,使其符合要求。
分別選中單個控制項,在右側屬性欄中修改其屬性,並擺放好大致位置。修改屬性應包括給控制項一個見名知意的對象名稱;密碼Line Edit控制項的echoMode屬性的值設置為Password,即不可見;精確調整控制項大小和擺放位置,使之對齊等等(擺放位置亦可通過下述的「布局」進行對齊)。
單擊菜單欄的Edit,編輯Tab順序,從上到下依次是1,2,3,4。
從左側拖入一個Horizontal Spacer控制項置於PushButton控制項同行左側,並修改使其長度適宜。分別選擇位於同一行的控制項並點擊「窗口」中的「水平布局」,最後選中所有,點擊「窗口」下拉菜單下的「垂直布局」。選中所有,並「柵格布局」和調整對話框到合適大小,結果如下。

切換到「編輯信號/槽」模式,拖動確定到空白位置。在彈出的「配置連接」對話框中左選擇「clicked()」,右選擇「accept()」。
保存為ui文件,不妨命名為test。
終端下使用盤符和cd命令進入到ui文件所在的位置。需要注意的是,進入位置需要分兩步走。例如ui保存在 C:/savehere/,而當前的目錄是在D:/,則我們要命令提示符窗口運行C:和cd C:/savehere/,不區分先後順序。
進入目錄後,使用pyuic4工具進行轉化,具體敲pyuic4 test.ui -o test.py,並回車。
右鍵點擊在test.ui相同目錄下生成test.py,選擇Edit with IDLE。就可看到代碼。

⑷ Python DearPyGui 常用控制項一

菜單欄是一個 GUI 應用中重要的控制項,始終顯示在窗口頂部,並具有三個主要部分:

菜單可以根據需要嵌套,而且任何控制項都可以添加到菜單中,例如下面栗子中的 「控制項列表」 菜單。

通過 select_directory_dialog 來調用目錄對話框,而且必須為其提供回調方法。 回調方法返回的 data 參數中將包含 目錄路徑 文件夾路徑 。通常,目錄對話框是由另一個控制項(例如下面栗子中的按鈕)調用的。

通過 open_file_dialog 可以調用文件對話框,同樣,必須為其提供回調方法,回調方法返回的 data 參數中將包含 目錄路徑 文件名稱 。 extensions 是文件對話框的可選參數,可以設置對文件擴展名的過濾,控制顯示哪些後綴名的文件。

Dear PyGui 具有 simple_plot (簡單繪圖)和 plot (繪圖)兩個繪圖方式,兩者都是動態的。 simple_plot (簡單繪圖)接受列表參數,並基於列表中的數據數據繪制 y軸 數據,可以是折線圖或直方圖。

而 plot (繪圖)則具有更多的功能,繪圖同時使用 x軸 和 y軸 坐標,使用 add_plot 方法創建,然後可以將數據作為線形圖或散布圖添加, plot (繪圖)的特點有:

另外,滑鼠停留在繪圖上時,會出現數值類型的浮動文本。

通過 set_value 方法可以更改繪圖調用的值,使 simple_plot (簡單繪圖)實現動態實時繪制。

同樣的, plot (繪圖)也可以動態實時繪制,舉個栗子,我們使用 set_render_callback 設置一個渲染回調實現動態繪制。

Dear PyGui 有一個低級繪圖 API,可以用來原始繪畫、自定義控制項甚至動態繪畫。先通過調用 add_drawing 方法開始繪畫,再通過調用各種繪畫方法來添加筆畫。需要注意的是,畫布的原點位於左下角。

繪畫( drawing )具有可以獲取和設置的縮放( origin )、原點( origin )和尺寸( size )屬性,縮放( origin )是 x 和 y 值的乘數,尺寸( size )以像素為單位。

繪畫( drawing )可以顯示的圖像類型有 .png 、 .jpg 、 .bmp ,使用時需掉用 draw_image 以繪制圖像。通過 pmin 和 pmax 參數,我們可以將圖像繪制到畫布上矩形的左上和右下區域,圖像會縮放自動縮放以適應指定區域。

使用 uv_min 和 uv_max 參數,我們可以控制圖像要繪制到哪個區域的 標量(scalar) ,默認情況下, uv_min = [0,0] 和 uv_max = [1,1] 將顯示整個圖像,而 uv_min = [0,0] 和 uv_max = [0.5,0.5] 則僅顯示圖形的一部分。

盡管我們可以通過清除和重繪整個圖來實現圖形的動態化,但是 DearPyGui 還提供了一種更有效的方法,要使繪畫( drawing )動態化,應該使用 tag 參數標記要重繪的控制項,然後,只要使用相同的標簽去調用。這樣,我們就能實現僅清除該控制項,並將其重新繪制。

⑸ 郁悶於Python GUI開發,有沒有好的框架

1、Kivy
Kivy是一個開源工具包能夠讓使用相同源代碼創建的程序能跨平台運行。它主要關注創新型用戶界面開發,如:多點觸應用程序。Kivy還提供了一個多點觸摸滑鼠模擬器。當前支持的平台包括:Linux、windows、Mac OS X和Android。
Kviy擁有能夠處理動畫、緩存、手勢、繪圖等功能。它還內置許多用戶界面控制項如:按鈕、攝影機、表格、Slider和樹形控制項等。
2、Flexx
Flexx是一個純Python工具包,用來創建圖形化界面應用程序。其使用web技術進行界面的渲染。你可以用Flexx來創建桌面應用,同時也可以導出一個應用到獨立的HTML文檔。因為使用純Python開發,所以Flexx是跨平台的。
3、PyQt
PyQt是Qt庫的Python版本。PyQt3支持Qt1到Qt3.PyQt4支持Qt4.它的首次發布也是在1998年,但是當時它叫PyKDE,因為開始的時候SIP和PyQt沒有公開。PyQt是用SIP寫的,PyQt提供GPL版和商業版。
4、wxPython
wxPython是Python語言的一套優秀的GUI圖形庫,允許Python程序員很方便的創建完整的、功能健全的GUI用戶界面。wxPython是作為優秀的跨平台GUI庫wxWidgets的Python封裝和Python模塊的方式提供給用戶的。
就如同Python和wxWidgets一樣,wxPython也是一款開源軟體,並且具有非常優秀的跨平台能力,能夠運行在32位windows、絕大多數的Unix或類Unix系統、Macintosh OS X上。
5、Tkinter
Tkinter是TK圖形用戶界面工具包標準的Python介面。TK是一個輕量級的跨平台圖形用戶界面開發工具。Tk和Tkinter可以運行在大多數的Unix平台、windows和Macintosh系統。
6、PyGTK
PyGTK讓你用Python輕松創建具有圖形用戶界面的程序,底層的GTK+提供了各式的可視元素和功能,如果需要,你能開發在GNOME桌面系統運行的功能完整的軟體。PyGTK真正具有跨平台性,它能不加修改地,穩定運行各種操作系統之上。除了簡單易用和快速的原型開發能力外,PyGTK還有一流的處理本地化語言的獨特功能。
了解更多python知識,推薦選擇【老男孩教育】。

⑹ python如何進行桌面開發有哪些資料可供參考

這里介紹3個python桌面開發的包,分別是tkinter,wxpython和pyqt,這3個包都可以快速的開發出桌面應用,下面我簡單介紹一下這3個包的安裝和使用,實驗環境win10+python3.6+pycharm5.0,主要內容如下:

1.tkinter:這個是python自帶的開發桌面GUI的標准庫,不需要安裝,跨平台、可移植性高,支持主流的操作系統,像Windows,Linux,Mac等,python自帶的IDLE就是採用這個包開發,簡單易學,容易上手,適合小型項目的開發,入門GUI開發的話,可以試一下這個包,官網資料https://docs.python.org/2/library/tkinter.html:

程序運行如下:

2.wxpython:這是python一個優秀、成熟的跨平台GUI包,但不是自帶的標准庫,需要單獨安裝,支持的組件眾多,可以幫助程序員快速的創建功能齊全、界面友好的GUI界面,應用廣泛,非常適合中小型項目的開發,官網資料https://docs.wxpython.org/,可以參考學習一下,下面我簡單介紹一下安裝和使用:

安裝,這里直接在cmd窗口輸入命令「pip install wxpython」就行,如下:

安裝成功後,就可以進行簡單的測試了,代碼如下,一個簡單編輯器:

程序運行截圖如下:

3.pyqt:這個是Qt提供給python的一個介麵包,Qt功能強大,組件眾多,可以快速構建用戶GUI界面,所以pyqt的功能也十分強大,藉助於Qt,我們可以構建桌面應用,下面我簡單介紹一下pyqt的安裝和使用,官網資料http://pyqt.sourceforge.net/Docs/PyQt5/:

安裝pyqt5,這個直接在cmd窗口輸入「pip install pyqt5」就行,如下:

測試代碼如下,一個簡單的計算器:

程序運行截圖如下:

當然,你也可以藉助designer.exe直接拖拽控制項,完成GUI界面開發,如下,最後打包成py文件就行:

目前,就介紹這3個包吧,網上也有許多這方面的教程,感興趣的話,可以搜搜,希望以上分享的內容能對你有所幫助吧。

⑺ python 編寫gui界面有哪些

安裝wxPython

下面是wxPython特別基礎的使用方法,將以一個小程序為例來說明,它的功能是在一個文本框中輸入文件名,點擊open按鈕,會在另一個文本框中顯示其內容,可以進行修改,點擊save可以保存修改。

wxPython的使用簡介

創建應用程序對象:wx.App()

app=wx.App()
app.MainLoop()

窗口/框架:wx.Frame()

win=wx.Frame(None,title='example')
win.Show()

組件

⑻ Python GUI庫大匯總

所有程序都是基於命令行的,這些程序可能只有一些「專業」的計算機人士才會使用。例如前面編寫的五子棋等程序,恐怕只有程序員自己才願意玩這么「糟糕」的游戲,很少有最終用戶願意對著黑乎乎的命令行界面敲命令。
相反,如果為程序提供直觀的圖形用戶界面(Graphics User Interface, GUI),最終用戶通過拖動滑鼠、單擊等動作就可以操作整個應用,這樣的應用程序就會很受政迎(實際上,Windows 之所以廣為人知,其最初的吸引力就是來自它所提供的圖形用戶界面)。
作為一個程序設計者,必須優先考慮用戶的感受,一定要讓用戶感到「爽」,程序才會被需要、被使用,這樣的程序才有價值。
在真正開始介紹 Python 圖形界面編程之前,首先簡單介紹一下 Python 的圖形用戶界面庫。
1) PyGObject
PyGObject 庫為基於 GObject 的 C 函數庫提供了內省綁定,這些庫可以支持 GTK+3 圖形界面工具集,因此時 GObject 提供了豐富的圖形界面組件。
2) PyGTK
PyGTK 基於老版本的 GTK+2 的庫提供綁定,藉助於底層 GTK+2 所提供的各種可視化元素和組件,同樣可以開發出在 GNOME 桌面系統上運行的軟體,因此它主要適用於 Linux/UNIX 系統。PyGTK 對 GTK+2 的 C 語言進行了簡單封裝,提供了面向對象的編程介面。其官方網址是http://www.pygtk.org/。
3) PyQt
PyQt 是 Python 編程語言和 Qt 庫的成功融合。Qt 本身是一個擴展的 C++ GUI 應用開發框架,Qt 可以在 UNIX、Windows 和 Mac OS X 上完美運行,因此 PyQt 是建立在 Qt 基礎上的 Python 包裝。所以 PyQt 也能跨平台使用。
4) PySide
PySide 是由 Nokia 提供的對 Qt 工具集的新的包裝庫,目前成熟度不如 PyQt。
5) wxPython
wxPython 是一個跨平台的 GUI 工具集,wxPython 以流行的 wxWidgets(原名 wxWindows)為基礎,提供了良好的跨平台外觀。簡單來說,wxPython 在 Windows上調用 Windows 的本地組件、在 Mac OS 上調用 Mac OS X 的本地組件、在 Linux 上調用 Linux 的本地組件,這樣可以讓 GUI 程序在不同的平台上顯示平台對應的風格。wxPython 是一個非常流行的跨平台的 GUI 庫。
如果讀者有需要,則完全可以選擇上面這些 Python GUI 庫來開發圖形用戶界面。如果考慮開發跨平台的圖形用戶界面,則推薦使用 PyQt 或 wsPython。

⑼ Python GUI項目實戰(二)主窗體的界面設計與實現

上一節我們介紹了登錄窗體的GUI設計與功能實現,用戶的賬號和密碼校驗完成後應當跳轉到主窗體內容,這一節我們將具體介紹主窗體界面的設計與功能實現!

我們新建一個900x640的窗口,頂部加入圖片,下面主體部分創建兩個Panedwindow容器,左邊添加按鈕,右邊作為TreeView顯示界面;

顯示效果:(注意:tkinter在Mac上Panedwindow不支持修改前景色背景色)

在右邊的Pannedwindow容器中,添加一個LabelFrame容器作為查詢區域,在LabelFrame容器中添加一系列的Label、Entry、Button控制項,可以輸入學號、姓名、電話、身份證、查詢、和顯示全部信息:

顯示效果:

創建控制項、設置對齊方式和每個列的標題

顯示效果:

登錄成功後,在頂部顯示用戶姓名和登錄時間,用戶姓名是怎麼來的?是我們在登錄窗口輸入的,所以這就涉及到了跨窗體數據的傳遞。這一點非常重要!
登錄窗體(登錄信息)==>主窗體
傳遞的基本方式:構造函數
在主窗體的構造函數中添加一個接收參數 current_user ,在登錄窗體載入新窗體時將參數傳遞進去;
但是我們登錄窗體的登錄函數 login() 中用戶名的變數 user 是局部變數,函數調用完了之後就變數就沒有了,那怎麼調用呢?
我們需要在登錄窗體的構造函數中定義全局變數:

為了獲取用戶登錄的時間,我們定義一個獲取當前時間的方法:

然後在載入主窗體時將參數 self.user 和 self.get_now_time() 作為參數傳遞進去

另一邊,我們在主窗體中,在構造函數中添加全局變數

之後,我們在Top_banner中通過標簽將user信息展示出來:

這樣主窗口就會顯示通過登錄窗口登錄的用戶名(首字母自動轉大寫)和登錄時間:
效果演示:

然後我們在構造方法中把這個函數寫入,以實現自動把學生信息寫入到all_student_list中

文件中讀取到的學生信息存儲到all_student_list列表,以此作為參數傳入載入TreeView的方法中;

在構造方法中調用該方法,自動把所有學生信息載入到TreeView中

運行效果:

這一節我們實現了主窗體的搭建,從界面的布局到TreeView載入全部學生信息。學生數據如此之多,如果我們想精確查看具體某個學生的信息該怎麼做呢?下一講,我們將實現學生信息的查詢功能,敬請期待吧~

閱讀全文

與python的gui界面各類控制項相關的資料

熱點內容
杭州程序員健身 瀏覽:13
dvd光碟存儲漢子演算法 瀏覽:758
蘋果郵件無法連接伺服器地址 瀏覽:963
phpffmpeg轉碼 瀏覽:672
長沙好玩的解壓項目 瀏覽:145
專屬學情分析報告是什麼app 瀏覽:564
php工程部署 瀏覽:833
android全屏透明 瀏覽:737
阿里雲伺服器已開通怎麼辦 瀏覽:803
光遇為什麼登錄時伺服器已滿 瀏覽:302
PDF分析 瀏覽:486
h3c光纖全工半全工設置命令 瀏覽:143
公司法pdf下載 瀏覽:383
linuxmarkdown 瀏覽:350
華為手機怎麼多選文件夾 瀏覽:683
如何取消命令方塊指令 瀏覽:350
風翼app為什麼進不去了 瀏覽:779
im4java壓縮圖片 瀏覽:362
數據查詢網站源碼 瀏覽:151
伊克塞爾文檔怎麼進行加密 瀏覽:893