欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python基礎(chǔ)之tkinter圖形化界面學(xué)習(xí)

 更新時(shí)間:2021年04月29日 15:15:38   作者:anITfish  
這篇文章主要介紹了Python基礎(chǔ)之tkinter圖形化界面學(xué)習(xí),文中有非常詳細(xì)的代碼示例,對正在學(xué)習(xí)python基礎(chǔ)的小伙伴們有非常好的幫助,需要的朋友可以參考下

一、基礎(chǔ)內(nèi)容

import tkinter as tk
from PIL import Image,ImageTk

def my():
        pwin.destroy()
        win.deiconify()


win = tk.Tk()
#win.geometry('320x240+100+50') #長320寬240 右100,下50
win['width']=320   #可以用win.keys()查看哪些可以這樣寫
win['height']=240 
win.title('tkinter圖形化專題學(xué)習(xí)')

#win.iconbitmap('my.ico')
img=ImageTk.PhotoImage(image=Image.open('1.gif','r'))
win.iconphoto(False,img)
#win.withdraw()#臨時(shí)退出
#win.deiconify()#恢復(fù)
#win.iconify()#最小化
#win.destroy()#關(guān)掉
#help(win.state)
"""
win.state('iconic')
win.state('normal')
win.state('zommed')
win.state('zoomed')
win.state('withdraw')
"""
#win.attributes('-alpha',0.5) #設(shè)置透明度
#win.attributes('-toolwindow',1)#沒有最大化最小化按鈕
#win.attributes('-toolwindow',0)#常規(guī)窗口
#win.attributes('-topmost',1) #置頂

win.withdraw()  #隱藏原窗口
pwin=tk.Toplevel(win)  #新建彈窗
pwin.title('彈窗')
pwin.protocol('WM_DELETE_WINDOW',my)


win.mainloop()

二、漸變窗口與計(jì)時(shí)器

#計(jì)時(shí)器
import tkinter as tk
import time

def my():
    global x
    if x >1:
        return
    win.title('計(jì)時(shí)器:{:.2f}'.format(x))
    win.attributes('-alpha', x)
    x += 0.01
    
    win.after(200,my) #100ms
    
win = tk.Tk()
win.title("計(jì)時(shí)器")
win['bg']= 'lightblue'  #用win.keys()查看
win.geometry('300x300')
win.resizable(0,0) #不可變窗口大小

x = 0.01
win.attributes('-alpha', x)
win.after(200,my)

win.mainloop()

三、簡單的布局標(biāo)簽文本框按鈕

3.1 布局

import tkinter as tk
win=tk.Tk()
win.title("布局")
win.geometry('320x240')
#win.resizable(0,0)
#定義
lbl=tk.Label(win,text="請輸入")
txt=tk.Entry(win)
btn=tk.Button(win,text="確定")
#布局 方法一pack打包式放置 方法二grid表格式放置 方法三place任意放置
"""
lbl.pack(side='left' ,padx=(10,0))
txt.pack(side='left')   #txt.pack_info()查看pack的參數(shù)
btn.pack(side='left', padx='10')
"""
"""
lbl.grid(row=0,column=0,padx=(50,10),pady=10) #lbl.grid_info()查看grid的參數(shù)
txt.grid(row=0,column=1)
btn.grid(row=1,column=0,columnspan=2,padx=(50,0),pady=10, sticky='we')
"""
lbl.place(relx=0.1,rely=0.2)
txt.place(relx=0.3,rely=0.15)
btn.place(relx=0.5,rely=0.25)
#win.mainloop()

3.2 布局

import tkinter as tk
#建窗口
win=tk.Tk()
win.title('布局')
#建組件
frm=tk.Frame(win) #框架
#定義
lbl=tk.Label(frm,text='請輸入')
txt=tk.Entry(frm)
btn=tk.Button(win,text='確定')

#布局
lbl.pack(side='left', padx=10, pady=10)
txt.pack(side='left', padx=10, pady=10)
frm.pack()
btn.pack(fill='x')


win.mainloop()

四、攝氏度華氏度

import tkinter as tk
def myfun(e):
#def myfun():
    try:
        a=int(entry1.get())
        b=int(entry2.get())
        lbx.delete(0,'end')
        for i in range(a,b+1):
            f=i*9/5+32
            lbx.insert('end','    {}           {}'.format(i,f))
    except:
        pass


win=tk.Tk()
win.title('溫度轉(zhuǎn)換')
win.resizable(0,0) #大小不可更改
label1 = tk.Label(win, text='請輸入第1個整數(shù)')
label2 = tk.Label(win, text='請輸入第2個整數(shù)')
label3 = tk.Label(win, text='攝氏溫度   華氏溫度')
entry1 = tk.Entry(win)
entry2 = tk.Entry(win)
entry1.insert(0, '10')
entry2.insert(0, '15')
#btn=tk.Button(win, text='確定',command=myfun)
btn=tk.Label(win, text='確定',#把label變成按鈕
             relief='groove')  #浮雕
btn.bind('<Button-1>', myfun) #用bing綁定 必須給函數(shù)參數(shù) 
lbx=tk.Listbox(win)

#滾動條
scr=tk.Scrollbar(win)
scr['command']=lbx.yview
lbx['yscrollcommand']=scr.set

label1.grid(row=1, column=0)
label2.grid(row=2, column=0)
label3.grid(row=0, column=2)

entry1.grid(row=1, column=1)
entry2.grid(row=2, column=1)
btn.grid(row=3, column=1, sticky="ew")
lbx.grid(row=1, column=2, rowspan=3, padx=10, pady=10)
scr.grid(row=1, column=3, rowspan=3, sticky='ns')
#btn.key()找到可以設(shè)置的參數(shù) 或者btn.config()

win.mainloop()

五、隨機(jī)彈出數(shù)字(隨機(jī)點(diǎn)名、抽獎)

import tkinter as tk
import random
def myfun():
    lst=list(range(100))
    name=random.choice(lst)
    lbl['text']=name
    win.after(500,myfun)

win=tk.Tk()
win.title('抽獎程序')

lbl=tk.Label(win,text='***', width=6,font='-size 48')
btn=tk.Button(win,text='開始', font='-size 36', command=myfun)

lbl.grid(row=0,column=0,padx=10,pady=10)
btn.grid(row=0,column=1,padx=10,pady=10)


#win.mainloop()

六、幾行幾列五子棋畫布

import tkinter as tk

win=tk.Tk()
win.title('五子棋')
win.geometry('800x600+64+32')
win.resizable(0,0)

#建畫布
cav=tk.Canvas(win, width=600,height=600, bg='yellow')
rfm=tk.Frame(win,width=200,height=600, bg='lightyellow')
cav.pack(side='left')
rfm.pack(side='right')

#畫線
for i in range(1,20):
    x1, y1, x2, y2=30, i*30,19*30,i*30
    cav.create_line(x1,y1,x2,y2)
    cav.create_line(y1,x1,y2,x2)

到此這篇關(guān)于Python基礎(chǔ)之tkinter圖形化界面學(xué)習(xí)的文章就介紹到這了,更多相關(guān)Python tkinter圖形化界面學(xué)習(xí)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python?cv.Canny()方法參數(shù)與使用方法

    Python?cv.Canny()方法參數(shù)與使用方法

    這篇文章主要介紹了Python?cv.Canny()方法參數(shù)與使用方法,OpenCV提供了cv.Canny()方法,該方法將輸入的原始圖像轉(zhuǎn)換為邊緣圖像,更多相關(guān)內(nèi)容需要的朋友可以參考一下
    2022-07-07
  • Python基于百度AI實(shí)現(xiàn)OCR文字識別

    Python基于百度AI實(shí)現(xiàn)OCR文字識別

    這篇文章主要介紹了Python基于百度AI實(shí)現(xiàn)OCR文字識別,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-04-04
  • python 判斷一個進(jìn)程是否存在

    python 判斷一個進(jìn)程是否存在

    判斷python判斷一個進(jìn)程是否存在
    2009-04-04
  • 終于搞懂了Python中super(XXXX,?self).__init__()的作用了

    終于搞懂了Python中super(XXXX,?self).__init__()的作用了

    本文主要介紹了終于搞懂了Python中super(XXXX,?self).__init__()的作用了,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • 使用python檢查yaml配置文件是否符合要求

    使用python檢查yaml配置文件是否符合要求

    這篇文章主要介紹了使用python檢查yaml配置文件是否符合要求,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • python連接sql?server數(shù)據(jù)庫的方法實(shí)戰(zhàn)

    python連接sql?server數(shù)據(jù)庫的方法實(shí)戰(zhàn)

    當(dāng)我們用Python來編寫網(wǎng)站,必須要能夠通過python操作數(shù)據(jù)庫,下面這篇文章主要給大家介紹了關(guān)于python連接sql?server數(shù)據(jù)庫的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2022-08-08
  • pyqt QGraphicsView 以鼠標(biāo)為中心進(jìn)行縮放功能實(shí)現(xiàn)

    pyqt QGraphicsView 以鼠標(biāo)為中心進(jìn)行縮放功能實(shí)現(xiàn)

    在PyQt開發(fā)中,實(shí)現(xiàn)QGraphicsView的鼠標(biāo)中心縮放功能需要注意初始化以及關(guān)鍵函數(shù)的重定義,遇到不達(dá)預(yù)期的效果時(shí),可能需要重寫所有鼠標(biāo)事件,本文記錄了解決QGraphicsView鼠標(biāo)縮放問題的過程,供開發(fā)者參考
    2024-10-10
  • Python解決pip?install?numpy過慢問題的幾種方法

    Python解決pip?install?numpy過慢問題的幾種方法

    在進(jìn)行Python科學(xué)計(jì)算、數(shù)據(jù)分析或機(jī)器學(xué)習(xí)時(shí),numpy是最基礎(chǔ)且最常用的庫之一,然而,許多用戶在安裝numpy時(shí),可能會遇到下載速度極慢甚至失敗的情況,本文將從問題分析、解決方案、優(yōu)化建議等多個角度,詳細(xì)介紹pip?install?numpy過慢問題的解決,需要的朋友可以參考下
    2025-03-03
  • python多線程調(diào)用exit無法退出的解決方法

    python多線程調(diào)用exit無法退出的解決方法

    今天小編就為大家分享一篇python多線程調(diào)用exit無法退出的解決方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-02-02
  • tornado 多進(jìn)程模式解析

    tornado 多進(jìn)程模式解析

    這篇文章主要介紹了tornado 多進(jìn)程模式解析,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-01-01

最新評論