python編寫界面
A. python如何設計窗口
PyQt是一個基於Qt的介麵包,可以直接拖拽控制項設計UI界面,下面我簡單介紹一下這個包的安裝和使用,感興趣的朋友可以自己嘗試一下:
1、首先,安裝PyQt模塊,這個直接在cmd窗口輸入命令「pip install pyqt5」就行,如下,整個模塊比較大,下載過程需要等待一會兒,保持聯網:
2、安裝完成後,我們就可以直接打開Qt自帶的Qt Designer設計師設計界面了,這里默認會安裝到site-packages->PyQt5->Qt->bin目錄,打開後的界面如下,可以直接新建對話框等窗口,所有的控制項都可以直接拖拽,編輯屬性,非常方便:
相關推薦:《Python基礎教程》
3、這里我簡單的設計了一個登錄窗口,2個輸入框和2個按鈕,如下,這里可以直接使用QSS對界面進行美化(設置styleSheet屬性即可),類似網頁的CSS,如果你有一定的前端基礎,那麼美化起來會非常容易:
設計完成後,還只是一個ui文件,不是現成的Python代碼,還需要藉助pyuic5工具(也在bin目錄下)才能將ui文件轉化為Python代碼,切換到ui文件所在目錄,輸入命令「pyuic5 -o login.py login.ui」即可(這里替換成你的ui文件),轉化成功後的Python代碼如下(部分截圖):
還需要在最下面添加一個main函數,創建上面Ui_Form類對象顯示窗口即可,如下:
最後點擊運行程序,效果如下,和剛才設計的界面效果一模一樣:
至此,我們就完成了利用Python的PyQt模塊直接拖拽控制項來設計UI界面。總的來說,整個過程非常簡單,只要你有一定的Python基礎,熟悉一下操作過程,很快就能掌握的,當然,還有許多其他UI開發模塊,像tkinter,wxPython,Eric6等,也都非常不錯。
B. python寫界面的流行庫
Python寫界面的流行庫:
1. Tkinter
Tkinter是圖形用戶界面工具包標準的Python介面,不需要額外安裝,是python標准庫的一部分,它可以運行在大多數unix平台,windows,mac,適合新手入門學習
2. wxPython
優秀的 GUI 圖形庫,wxPython具有優秀的誇平台能力,可以運行在類unix平台,mac,windows平台,下載它的git 倉庫
3. PyQt
PyQt是Qt庫的Python版本,相比於wxpython而言,要龐大很多,兼容性上,最新版本的PyQt已經趕上來了,這方面不用太擔心
4. 其他GUI庫
Kivy, Flexx, Pywin32, PyGTK,pyui4win 這些圖形庫也都不錯
C. python 編寫gui界面有哪些
安裝wxPython
下面是wxPython特別基礎的使用方法,將以一個小程序為例來說明,它的功能是在一個文本框中輸入文件名,點擊open按鈕,會在另一個文本框中顯示其內容,可以進行修改,點擊save可以保存修改。
wxPython的使用簡介
創建應用程序對象:wx.App()
app=wx.App()
app.MainLoop()
窗口/框架:wx.Frame()
win=wx.Frame(None,title='example')
win.Show()
組件
按鈕:wx.Button()
文本控制項:wx.TextCtrl()
尺寸器的構建函數:wx.BoxSizer()
Add方法
- #coding=utf-8
- import wx
- #設置函數
- def load(event):
- f=open(filename.GetValue(),'r')
- content.SetValue(f.read())
- f.close()
- def save(event):
- f=open(filename.GetValue(),'w')
- f.write(content.GetValue())
- f.close()
- app=wx.App()
- win=wx.Frame(None,title='simple editor',size=(410,330))
- bkg=wx.Panel(win)
- loadbutton=wx.Button(bkg,label='Open')
- loadbutton.Bind(wx.EVT_BUTTON,load)
- savebutton=wx.Button(bkg,label='Save')
- savebutton.Bind(wx.EVT_BUTTON,save)
- filename=wx.TextCtrl(bkg)
- content=wx.TextCtrl(bkg,style=wx.TE_MULTILINE|wx.HSCROLL)
- hbox=wx.BoxSizer()
- hbox.Add(filename,proportion=1,flag=wx.EXPAND)
- hbox.Add(loadbutton,proportion=0,flag=wx.LEFT,border=5)
- hbox.Add(savebutton,proportion=0,flag=wx.LEFT,border=5)
- vbox=wx.BoxSizer(wx.VERTICAL)
- vbox.Add(hbox,proportion=0,flag=wx.ALL,border=5)
- vbox.Add(content,proportion=1,flag=wx.EXPAND|wx.ALL,border=5)
- bkg.SetSizer(vbox)
- win.Show()
- app.MainLoop()`
關鍵字label設置標簽:
btn=wx.Button(win,label='open')
綁定事件:
btn.Bind(wx.EVT_BUTTON,load)
關鍵字style有wx.TE_MULTILINE(垂直滾動條),wx.HSXROLL(水平滾動條):
filename=wx.TextCtrl(win,style=wx.TE_MULTILINE|wx.HSXROLL)
同時我們可以在讀取或者寫入其內容:
filename.GetValue() filename.SetValue('string')
布局:使用尺寸器(sizer)
wx.BoxSizer的原理是創建一個箱子一樣的東西,只能橫著或者豎著放組件,一個一個的加進去,除了基本大小外其餘空間按比例分配。加完一行行的箱子後,創建一個豎著的箱子,將這些橫著的箱子(也可以是其他組件)加進去。
*背景組件:wx.Panel()
以窗口為參數構建,所有的組件依附其上,在設置完尺寸器後,使用bkg.SetSizer(box)
有一個決定它是垂直還是水平的參數(wx.HORIZONTAL水平,wx.VERTICAL垂直),默認為水平。
box=wx.BoxSizer(wx.VERTICAL)
proportion參數決定這個組件在剩餘空間中的分配比例,flag參數有wx.EXPAND(會確保組件會擴展到分配的空間里),wx.LEFT,wx.RIGHT,wx.TOP,wx.BOTTOM,wx.ALL(這五個決定邊框參數會應用到那個邊),border參數會確定邊框的大小。
完整版的源代碼如下:
D. python如何製作一個簡單界面
使用Tkinter庫
fromtkinterimport*
win=Tk()
#win.title('googlesearchengineoptimal')
win.title('一個測試程序')
#thetoplevelofthewindow
defreport(text):
#print(v.get())
entry2=Label(root,text=v.get())
entry2.grid(row=1,column=1)
root=Frame(win)
root.pack()
label1=Label(root,text='d取值手動滑動條',width=25)
label1.pack(side=LEFT)
label1.grid(row=0,column=0)
v=StringVar()
scl=Scale(root,from_=0,to=1,tickinterval=0.5,resolution=0.01,orient='horizontal',variable=v,sliderlength=10,width=40,length=200,command=report)
scl.grid(row=0,column=1)
print(scl.get())
label2=Label(root,text='d當前取值:',height=10)
label2.grid(row=1,column=0)
label3=Label(root,text='PR=d*GPR+10*(1-d)*FPR:d越大則排序考慮人氣越多。',height=10)
label3.grid(row=2)
root.mainloop()
E. python怎麼做圖形界面
python3.X以上版本有自帶的內置模塊,可以進行圖形界面的編程邏輯(turtle模塊,小烏龜,可以畫圖書寫等等)
也可以用其他第三方的模塊來實現。
F. 怎樣用Python編寫一個linux環境下的可視界面
1.linux+桌面,考慮下wxpython,也可以用tkinter寫的窗口程序,在windows和linux下都能運行。如圖所示:
2.linux無桌面環境:做成web,通過瀏覽器看
G. python是如何寫界面程序的
看了你的問題,幾個回答似乎都不完全對。 給你補充一下吧。
你的問題與flask基本上沒有關系。flask是一個簡單的微型編程框架,很優美,也很簡單好用。不過它僅僅實現了基於HTTP協議的服務端交互部分。
一個界面設計除了服務端交互,還需要本地交互(用JS, flash實現),最重要的還是需要客戶端界面(用HTML+CSS+JS實現)。文件上傳需要(JQUERY+UPLOADFILE庫)
從上面的回答看,你似乎剛開始著手做這些。我建議你按這個思路去做。
先學習html2.0,不是4.01,也不是5.0,因為2.0更基本。然後用frame和table做出你的界面,先實現左邊的部分
然後學習css,把你左邊的兩個按鈕搞定。用TABLE也可以,比如笨。然後用CSS將frame方式換成iframe實現
用傳統的html方式實現右邊的上傳下載
學習jquery,用其中uploadfile功能重新實現右邊的上傳功能
如果你學得快,需要1個星期,學得慢就說不準了,也許3個星期完成。
H. python如何做界面
PyQt,一個基於Qt的Python介麵包,可以直接使用Qt的控制項,還可以使用QSS進行界面美化,下面我簡單介紹一下這個包的安裝和使用,實驗環境Win7+Python3.6+PyCharm5.0,主要內容如下:
1.首先,安裝PyQt,這個直接在cmd窗口輸入命令「pip install pyqt5」就行,如下,由於安裝包比較大,所以需要等待一會兒:
I. python可以做界面開發嗎
PyQt,一個基於Qt的Python介麵包,可以直接使用Qt的控制項,還可以使用QSS進行界面美化,下面我簡單介紹一下這個包的安裝和使用,實驗環境Win7+Python3.6+PyCharm5.0,主要內容如下:
1.首先,安裝PyQt,這個直接在cmd窗口輸入命令「pip install pyqt5」就行,如下,由於安裝包比較大,所以需要等待一會兒:
可以基於這個代碼拓展 這個是python裡面一個拓展包
J. python能寫界面嗎
作為Pyhon開發者,你遲早都會碰到圖形用戶界面(GUI)應用開發任務,這時候我們就需要一些界面庫來幫助我們快速搭建界面,python的界面庫很多,我認識的並不多,這里只列出幾種我認識的
1.tkinter
Tkinter(也叫Tk介面)是Tk圖形用戶界面工具包標準的Python介面。Tk是一個輕量級的跨平台圖形用戶界面(GUI)開發工具。Tk和Tkinter可以運行在大多數的Unix平台、Windows、和Macintosh系統。
Tkinter 由一定數量的模塊組成。Tkinter位於一個名為_tkinter(較早的版本名為tkinter)的二進制模塊中 。Tkinter包含了對Tk的低 級介面模塊,低級介面並不會被應用級程序員直接使用,通常是一個共享庫(或DLL),但是在一些情況下它也被Python解釋器靜態鏈接。
2.pyqt
PyQt是Qt庫的Python版本。PyQt3支持Qt1到Qt3。 PyQt4支持Qt4。它的首次發布也是在1998年,但是當時它叫 PyKDE,因為開始的時候SIP和PyQt沒有分開。PyQt是用SIP寫的。PyQt 提供 GPL版和商業版。
3.wxpython
wxPython 是 Python 語言的一套優秀的 GUI 圖形庫,允許 Python 程序員很方便的創建完整的、功能鍵全的 GUI 用戶界面。 wxPython 是作為優秀的跨平台 GUI 庫 wxWidgets 的 Python 封裝和 Python 模塊的方式提供給用戶的。
就如同Python和wxWidgets一樣,wxPython也是一款開源軟體,並且具有非常優秀的跨平台能力,能夠運行在32位windows、絕大多數的Unix或類Unix系統、Macintosh OS X上。
4.Kivy
這是一個非常有趣的項目,基於OpenGL ES 2,支持Android和iOS平台的原生多點觸摸,作為事件驅動的框架,Kivy非常適合游戲開發,非常適合處理從widgets到動畫的任務。如果你想開發跨平台的圖形應用,或者僅僅是需要一個強大的跨平台圖形用戶開發框架,Kivy都是不錯的選擇。
5.pygame
Pygame是跨平台Python模塊,專為電子游戲設計,包含圖像、聲音。建立在SDL基礎上,允許實時電子游戲研發而無需被低級語言(如機器語言和匯編語言)束縛。
這個庫使用來寫游戲的,但是你也可以用來寫界面,嘿嘿
那選擇什麼庫是個人的喜好,但是我推薦盡可能去選擇一種通過且學習資料比較多的吧