網(wǎng)站首頁 編程語言 正文
GUI介紹
圖形用戶界面(Graphical User Interface,簡稱 GUI,又稱圖形用戶接口)是指采用圖形方式顯示的計(jì)算機(jī)操作用戶界面。圖形用戶界面是一種人與計(jì)算機(jī)通信的界面顯示格式,允許用戶使用鼠標(biāo)等輸入設(shè)備操縱屏幕上的圖標(biāo)或菜單選項(xiàng),以選擇命令、調(diào)用文件、啟動程序或執(zhí)行其它一些日常任務(wù)。與通過鍵盤輸入文本或字符命令來完成例行任務(wù)的字符界面相比,圖形用戶界面有許多優(yōu)點(diǎn)。圖形用戶界面由窗口、下拉菜單、對話框及其相應(yīng)的控制機(jī)制構(gòu)成,在各種新式應(yīng)用程序中都是標(biāo)準(zhǔn)化的,即相同的操作總是以同樣的方式來完成,在圖形用戶界面,用戶看到和操作的都是圖形對象,應(yīng)用的是計(jì)算機(jī)圖形學(xué)的技術(shù)。
在設(shè)計(jì)GUI程序的過程中,需要對用戶界面進(jìn)行渲染,達(dá)到色彩與便捷智能化一體。而在Python內(nèi)置庫里面,有一個(gè)自帶的就是tkinter庫,我們直接導(dǎo)入 使用即可。
簡單操作
import tkinter
top=tkinter.Tk()#生成一個(gè)主窗口
# 這里面可以作為消息循環(huán),添加窗口功能
label=tkinter.Label(top,text="圖形界面程序!")
label.pack()#將標(biāo)簽label添加到窗口中
button1=tkinter.Button(top,text="按鈕1")
button1.pack(side=tkinter.LEFT)#將按鈕1添加到窗口里
button2=tkinter.Button(top,text="按鈕2")
button2.pack(side=tkinter.RIGHT)#將按鈕2添加到窗口里
top.mainloop()#進(jìn)入消息循環(huán)
tkinter組件介紹
import tkinter
import tkMessageBox
top = tkinter.Tk()
def helloCallBack():
tkMessageBox.showinfo("Hello Python", "Hello Runoob")
B = tkinter.Button(top, text="點(diǎn)我", command=helloCallBack)
B.pack()
top.mainloop()
向窗體中添加按鈕控件
import tkinter
root=tkinter.Tk()#生成一個(gè)主窗口對象
button1=tkinter.Button(root,anchor=tkinter.E,#設(shè)置文本對齊方式
text="按鈕1",width=30,#設(shè)置按鈕寬度
height=7)
button1.pack()#將按鈕添加到主窗口
button2=tkinter.Button(root,text="按鈕2",bg="red")#設(shè)置背景按鈕色
button2.pack()
button3=tkinter.Button(root,text="按鈕3",width=12,height=1)
button3.pack()
button4=tkinter.Button(root,text="按鈕4",width=40,height=7,
state=tkinter.DISABLED)#設(shè)置按鈕為禁用
button4.pack()
root.mainloop()
使用文本框控件
在tkinter庫中可以實(shí)現(xiàn)信息接收和用戶的信息輸入工作,在Python程序中,使用tkinter.Entry和tkinter.text可以創(chuàng)建單行文本和多行文本框組件,通過傳遞一些屬性來解決顏色問題。
import tkinter
root=tkinter.Tk()
entry1=tkinter.Entry(root,
show="*"#設(shè)置顯示文本是星號
)
entry1.pack()
entry2=tkinter.Entry(root,show="$",width=50)
entry2.pack()
entry3=tkinter.Entry(root,bg="red",fg="blue")#設(shè)置文本框的前景色
entry3.pack()
entry4=tkinter.Entry(root,state=tkinter.DISABLED)
entry4.pack()
entry5=tkinter.Entry(root,selectbackground="red",selectforeground="gray")#分別設(shè)置文本背景色和文本前景色
entry5.pack()
edit1=tkinter.Text(root,selectbackground="red",selectforeground="gray")
edit1.pack()
root.mainloop()
使用菜單控件
在使用菜單控件的時(shí)候,和我們使用其他控件有所不同,我們需要使用創(chuàng)建主窗口的方法config()將菜單添加到窗口中。
import tkinter
root=tkinter.Tk()
menu=tkinter.Menu(root)
# 添加主菜單選項(xiàng)
submenu=tkinter.Menu(menu,tearoff=0)
submenu.add_command(label="打開")
submenu.add_command(label="保存")
submenu.add_command(label="關(guān)閉")
menu.add_cascade(label="文件",menu=submenu)#設(shè)置標(biāo)頭簽名稱
submenu=tkinter.Menu(menu,tearoff=0)
submenu.add_command(label="復(fù)制")
submenu.add_command(label="粘貼")
submenu.add_separator()
submenu.add_command(label="剪切")
menu.add_cascade(label="編輯",menu=submenu)
submenu=tkinter.Menu(menu,tearoff=0)
submenu.add_command(label="黑客模式")
submenu.add_command(label="植入病毒")
submenu.add_command(label="獲取密碼")
menu.add_cascade(label="幫助",menu=submenu)
root.config(menu=menu)#將菜單添加到主窗口
root.mainloop()
自己可定義不同的選項(xiàng),之后我們在選項(xiàng)里面嵌入不同的功能,這樣就達(dá)到了一個(gè)簡單圖形界面軟件的開發(fā)。
使用標(biāo)簽控件
import tkinter
root=tkinter.Tk()
label1=tkinter.Label(root,
# anchor=tkinter.E,#設(shè)置標(biāo)簽文本位置
bg="yellow",#設(shè)置標(biāo)簽的背景色
fg="blue",#設(shè)置標(biāo)簽的前景色
text="我是王小王\n!",#設(shè)置標(biāo)簽顯示的文本
justify=tkinter.CENTER,
width=40,#設(shè)置標(biāo)簽寬度
height=5#設(shè)置標(biāo)簽高度
)
label1.pack()#將標(biāo)簽1添加到主窗口
label2=tkinter.Label(root,
text="你好\nPython!",#設(shè)置標(biāo)簽顯示的文本
justify=tkinter.LEFT,
width=40,#設(shè)置標(biāo)簽寬度
height=5#設(shè)置標(biāo)簽高度
)
label2.pack()
label3=tkinter.Label(root,
text="你好\nPython!",#設(shè)置標(biāo)簽顯示的文本
justify=tkinter.RIGHT,
width=40,#設(shè)置標(biāo)簽寬度
height=5#設(shè)置標(biāo)簽高度
)
label3.pack()
label4=tkinter.Label(root,
text="你好\nPython!",#設(shè)置標(biāo)簽顯示的文本
justify=tkinter.CENTER,
width=40,#設(shè)置標(biāo)簽寬度
height=5#設(shè)置標(biāo)簽高度
)
label4.pack()
root.mainloop()
使用單選按鈕和復(fù)選按鈕組件
import tkinter
root=tkinter.Tk()
r=tkinter.StringVar()#生成字符串變量
r.set("1")
radio=tkinter.Radiobutton(root,
variable=r,
value="1",#設(shè)置單選按鈕時(shí)的變量值
text="單選按鈕1",
)
radio.pack()
radio=tkinter.Radiobutton(root,
variable=r,
value="2",#設(shè)置單選按鈕時(shí)的變量值
text="單選按鈕2",
)
radio.pack()
radio=tkinter.Radiobutton(root,
variable=r,
value="3",#設(shè)置單選按鈕時(shí)的變量值
text="單選按鈕3",
)
radio.pack()
radio=tkinter.Radiobutton(root,
variable=r,
value="4",#設(shè)置單選按鈕時(shí)的變量值
text="單選按鈕4",
)
radio.pack()
c=tkinter.IntVar()#生成整型變量
c.set(1)
check=tkinter.Checkbutton(root,text="復(fù)選按鈕",
variable=c,#復(fù)選按鈕關(guān)聯(lián)的變量
onvalue=1,#設(shè)置復(fù)選按鈕時(shí)的變量值1
offvalue=2)#設(shè)置復(fù)選按鈕時(shí)的變量值2
check.pack()
root.mainloop()
print(r.get())
print(c.get())
使用繪圖組件
import tkinter
root=tkinter.Tk()
canvas=tkinter.Canvas(root,
width=600,
height=480,
bg="white")#設(shè)置繪圖控件的背景色
''''
...............
'''
原文鏈接:https://blog.51cto.com/u_15172991/5428391
相關(guān)推薦
- 2023-01-19 Python正則表達(dá)式分組_python
- 2022-03-30 Android?RecyclerView曝光采集的實(shí)現(xiàn)方法_Android
- 2022-04-24 C語言時(shí)間函數(shù)之mktime和difftime詳解_C 語言
- 2023-04-02 使用Pytorch如何完成多分類問題_python
- 2022-06-06 Kafka在Zookeeper中存儲的信息有哪些?
- 2022-05-07 Python真題案例之蛇形數(shù)組詳解_python
- 2022-11-05 GO?CountMinSketch計(jì)數(shù)器(布隆過濾器思想的近似計(jì)數(shù)器)_Golang
- 2023-03-16 python使用redis實(shí)現(xiàn)消息隊(duì)列(異步)的實(shí)現(xiàn)完整例程_python
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運(yùn)算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯(cuò)誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實(shí)現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊(duì)列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支