主頁 > 知識庫 > 上帝為你開了一扇窗之Tkinter常用函數(shù)詳解

上帝為你開了一扇窗之Tkinter常用函數(shù)詳解

熱門標(biāo)簽:佛山400電話辦理 朝陽手機(jī)外呼系統(tǒng) 北瀚ai電銷機(jī)器人官網(wǎng)手機(jī)版 小蘇云呼電話機(jī)器人 地圖標(biāo)注面積 市場上的電銷機(jī)器人 所得系統(tǒng)電梯怎樣主板設(shè)置外呼 北京電銷外呼系統(tǒng)加盟 儋州電話機(jī)器人

第一步:導(dǎo)入模塊,無需安裝

import tkinter

第二步:實現(xiàn)一個窗口

import tkinter
tk=tkinter.Tk()
tk.mainloop()

 

這樣,我們應(yīng)該基本的gui窗口就搞定了。接下來,我們給它加點東西,讓它看起來更加獨特。

第三步:修改窗口名稱

tk.title("窗口")

第四步:設(shè)置窗口大小

tk.geometry("300x150+700+300")

參數(shù):width x height+x+y,

分別對應(yīng),窗口 寬,高,以及窗口出現(xiàn)的坐標(biāo),

桌面的坐標(biāo)系:以桌面左上角為(0,0)向右為x軸正半軸,向下為y軸正半軸

設(shè)置固定大小:

tk.minsize(560, 545) # 最小尺寸
 
tk.maxsize(560, 545) # 最大尺寸

設(shè)置全屏模式:

tk.attributes("-fullscreen", True)#全屏模式:True 全屏;False 正常顯示
注:全屏模式?jīng)]有退出按鈕,關(guān)閉可使用win+D最小化才能關(guān)閉

第五步:獲取當(dāng)前桌面的尺寸

有時候我們需要獲取到當(dāng)前屏幕的大小,來決定我們窗口的大小,那就需要獲取當(dāng)前屏幕的寬高,如何獲取呢?

w = tk.winfo_screenwidth()#獲取屏幕寬
h = tk.winfo_screenheight()#獲取屏幕高

第六步:設(shè)置窗口圖標(biāo)

tk.iconbitmap('favicon.ico')#設(shè)置窗口圖標(biāo),將ico放在同級目錄下。

第七步:設(shè)置窗口背景顏色

tk["background"] ="#7AC5CD"# 采用16色,或者"blue",顏色名稱

這里,我為大家準(zhǔn)備一個網(wǎng)站,供大家選擇顏色。

https://tool.oschina.net/commons?type=3

第八步:設(shè)置窗口透明度

tk.attributes("-alpha", 0.6)#設(shè)置窗口透明度,透明度的值是:0~1 可以是小數(shù)點,0:全透明;1:全不透明

第九步:設(shè)置頂部工具欄樣式

tk.attributes("-toolwindow", True)#有退出,可以移動

工具樣式:True 只有退出按鈕,也沒有圖標(biāo); False 正常的窗體樣式

如果要將退出按鈕都隱藏呢?

tk.overrideredirect(True)#無退出,不能移動,無工具欄

第十步:設(shè)置窗口置頂

tk.attributes("-topmost", True)
窗體置頂:True 所有窗口中處于最頂層;False 正常顯示

使用場景,比如:桌面便簽,需要顯示在最頂層,又不妨礙其他軟件使用。

第十一步:獲取tk窗體信息

# 獲取屏幕的大小;
height = tk.winfo_height()
width = tk.winfo_width()
# 獲取窗體的位置
x = tk.winfo_x()
y = tk.winfo_y()
通常結(jié)合.update()使用,獲取窗口改變之后的數(shù)據(jù)。
我們可以用bind來記錄。
tk.bind("", update_test)#綁定事件
def update_test(e):
    tk.update()
    # 獲取屏幕的大小;
    height = tk.winfo_height()
    width = tk.winfo_width()
    # 獲取窗體的位置
    x = tk.winfo_x()
    y = tk.winfo_y()
    print(width, height, x, y)
tk.bind("", update_test)

第十二步:添加標(biāo)簽

tkinter.Label(tk,text='標(biāo)簽1(0,0)').grid(column=0,row=0)#column表示x,row表示y
那如何來理解這個參數(shù)呢?
grid中參數(shù),依然可以把他看做是x,y,當(dāng)兩個標(biāo)簽中間沒有數(shù)據(jù)時,就會自然縮進(jìn)。
如圖2,其中沒有2,所以就會自動將2省去。
如圖三中,坐標(biāo)就是確定這些小方格。設(shè)置標(biāo)簽樣式:
tkinter.Label(tk,text='標(biāo)簽1(0,0)',background='red',font=30,).grid(column=0,row=0)#x,y
tkinter.Label(tk,text='標(biāo)簽1(1,1)',foreground='red').grid(column=1,row=1)#x,y
background='red'#標(biāo)簽背景顏色
font=30#字體大小
foreground='red'#字體顏色

第十三步:調(diào)用事件

button=Button(tk, text="事件調(diào)用", fg="blue",bd=2,width=8,command=update_test).grid(column=1,row=5)

每點擊一次,就調(diào)用對應(yīng)的函數(shù)。

第十四步:插入圖片

photo = tkinter.PhotoImage(file="圖片.png")#file:t圖片路徑
imgLabel = tkinter.Label(tk,image=photo).grid(column=1,row=6)#把圖片整合到標(biāo)簽類中

 

完整代碼

import tkinter
from tkinter import *
tk=tkinter.Tk()
tk.title("窗口")#設(shè)置窗口名稱
tk.geometry("300x150+700+300")
"""width x height+x+y,分別對應(yīng),窗口 寬,高,以及窗口出現(xiàn)的坐標(biāo)
    桌面的坐標(biāo)系:以桌面左上角為(0,0)向右為x軸正半軸,向下為y軸正半軸"""
w = tk.winfo_screenwidth()#獲取屏幕寬
h = tk.winfo_screenheight()#獲取屏幕高
print(w,h)
tk.iconbitmap('favicon.ico')#設(shè)置窗口圖標(biāo),將ico放在同級目錄下。
# 設(shè)置背景色,以“藍(lán)色”為例
tk["background"] ="#7AC5CD"# "blue"
tk.attributes("-alpha",1)#設(shè)置窗口透明度,透明度的值是:0~1 可以是小數(shù)點,0:全透明;1:全不透明
tk.attributes("-toolwindow", True)#有退出,可以移動,工具樣式:True 只有退出按鈕,也沒有圖標(biāo); False 正常的窗體樣式
#tk.overrideredirect(True)#無退出,不能移動,無工具欄
#tk.attributes("-fullscreen", True)#全屏模式:True 全屏;False 正常顯示
tk.attributes("-topmost", True)#窗體置頂:True 所有窗口中處于最頂層;False 正常顯示
# 獲取屏幕的大小;
height = tk.winfo_height()
width = tk.winfo_width()
# 獲取窗體的位置
x = tk.winfo_x()
y = tk.winfo_y()
print(width,height,x,y)
def update_test():
    tk.update()
    # 獲取屏幕的大小;
    height = tk.winfo_height()
    width = tk.winfo_width()
    # 獲取窗體的位置
    x = tk.winfo_x()
    y = tk.winfo_y()
    print(width, height, x, y)
# tk.bind("Configure>", update_test)#綁定事件,窗體的改變事件
tkinter.Label(tk,text='標(biāo)簽1(0,0)',background='red',font=30,).grid(column=0,row=0)#x,y,設(shè)置標(biāo)簽,grid設(shè)置位置
tkinter.Label(tk,text='標(biāo)簽1(1,1)',foreground='red').grid(column=1,row=1)#x,y
tkinter.Label(tk,text='標(biāo)簽2').grid(column=4,row=3)
tkinter.Label(tk,text='標(biāo)簽3').grid(column=3,row=4)
 
button=Button(tk, text="事件調(diào)用", fg="blue",bd=2,width=8,command=update_test).grid(column=1,row=5)#按鈕,添加按鈕事件
 
photo = tkinter.PhotoImage(file="Figure_1.png")#file:t圖片路徑
imgLabel = tkinter.Label(tk,image=photo).grid(column=1,row=6)#把圖片整合到標(biāo)簽類中
tk.mainloop()

到此這篇關(guān)于上帝給你開了一個窗口之Tkinter常用函數(shù)詳解的文章就介紹到這了,更多相關(guān)Tkinter常用函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • python用tkinter開發(fā)的掃雷游戲
  • python tkinter Entry控件的焦點移動操作
  • python3.7.2 tkinter entry框限定輸入數(shù)字的操作
  • python使用tkinter實現(xiàn)透明窗體
  • Python基于Tkinter開發(fā)一個爬取B站直播彈幕的工具
  • Python基礎(chǔ)之tkinter圖形化界面學(xué)習(xí)
  • Python實戰(zhàn)之用tkinter庫做一個鼠標(biāo)模擬點擊器
  • python基于tkinter制作m3u8視頻下載工具
  • Python中tkinter的用戶登錄管理的實現(xiàn)
  • python tkinter實現(xiàn)定時關(guān)機(jī)

標(biāo)簽:龍巖 酒泉 金融催收 商丘 云南 江蘇 定西 寧夏

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《上帝為你開了一扇窗之Tkinter常用函數(shù)詳解》,本文關(guān)鍵詞  上帝,為你,開了,一扇,窗之,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《上帝為你開了一扇窗之Tkinter常用函數(shù)詳解》相關(guān)的同類信息!
  • 本頁收集關(guān)于上帝為你開了一扇窗之Tkinter常用函數(shù)詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章