最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解python3中tkinter知識點

 更新時間:2018年06月21日 15:36:34   作者:shirayukixue  
本篇文章給大家分享了關(guān)于python3中tkinter的相關(guān)知識點以及實例代碼,有興趣的朋友參考下。
#導(dǎo)入tkinter模塊,以及導(dǎo)入ttk模塊,tkinter是python結(jié)合tk的標(biāo)準(zhǔn)接口,ttk是TK8.5之后加入的“主題化工具包”
from tkinter import *
from tkinter import ttk

#定義的計算函數(shù),完成英尺到米的換算
def calculate(*args):
  try:
    value = float(feet.get())
    meters.set((0.3048 * value * 10000.0 + 0.5)/10000.0)
  except ValueError:
    pass

'''
創(chuàng)建了一個主窗口;
主窗口標(biāo)題為:“Free to Meters”
通過ttk.Frame創(chuàng)建了一個框架容器;所以界面內(nèi)容都放在框架中,并把框架放在主窗口root中;
通過grid指定框架的位置,以及對齊方式:sticky說明使用羅盤式方位,控件將要如何在網(wǎng)格單元格里排放(NWES分別表示上左右下);
columnconfigure方法告訴tk自適應(yīng)寬度;
rowconfigure方法告訴tk自適應(yīng)高度
'''
root = Tk()
root.title("Feet to Meters")
mainframe = ttk.Frame(root, padding="3 3 12 12")
mainframe.grid(column=0, row=0, sticky=(N, W, E, S))
mainframe.columnconfigure(0, weight=1)
mainframe.rowconfigure(0, weight=1)

feet = StringVar()
meters = StringVar()

feet_entry = ttk.Entry(mainframe, width=7, textvariable=feet)
feet_entry.grid(column=2, row=1, sticky=(W, E))

ttk.Label(mainframe, textvariable=meters).grid(column=2, row=2, sticky=(W, E))
ttk.Button(mainframe, text="Calculate", command=calculate).grid(column=3, row=3, sticky=W)

ttk.Label(mainframe, text="feet").grid(column=3, row=1, sticky=W)
ttk.Label(mainframe, text="is equivalent to").grid(column=1, row=2, sticky=E)
ttk.Label(mainframe, text="meters").grid(column=3, row=2, sticky=W)

'''
檢查框架內(nèi)的所有控件,并在每個控件之間增加一點距離,使他們看起來沒那么擁擠;
告訴tk把注意力轉(zhuǎn)移到我們的輸入框上;也就是說在開始的時候,光標(biāo)默認(rèn)會在輸入框,當(dāng)用戶輸入的時候不需要去單擊
告訴tk用戶按下了回車鍵和單擊計算按鈕是一樣的,會調(diào)用計算程序段
'''
for child in mainframe.winfo_children(): child.grid_configure(padx=5, pady=5)
feet_entry.focus()
root.bind('<Return>', calculate)

#tk讓他的事件循環(huán),這樣才能讓所有的事件運行
root.mainloop()

忘記了什么?

這里還有一些值得檢查而我們沒有在Tk程序中包括的。例如:

  • ·我們沒有考慮當(dāng)事件改變時重繪界面
  • ·我們沒有考慮評價發(fā)送事件消息,捕獲監(jiān)測,或者在每個空間上處理事件
  • ·在創(chuàng)建控件的時候,我們沒有提供更多的選項;默認(rèn)看起來已經(jīng)關(guān)注了很多事情,并且我們僅僅改變了按鈕上的顯示文本。
  • ·我們沒有寫復(fù)雜的代碼來獲取和設(shè)定簡單控件的值,我們僅僅把它們鏈接到變量
  • ·我們沒有考慮當(dāng)用戶關(guān)閉窗口或者改變窗口大小后會發(fā)生什么
  • ·我們沒有寫額外的代碼讓它能夠跨平臺工作

相關(guān)文章

最新評論

义马市| 阳泉市| 洛南县| 信宜市| 突泉县| 景谷| 潜山县| 治县。| 枣庄市| 阿荣旗| 沙雅县| 滨州市| 游戏| 临汾市| 民丰县| 翁源县| 永福县| 乌兰浩特市| 湟中县| 桃江县| 永嘉县| 拉孜县| 兴和县| 寿光市| 石阡县| 肃宁县| 监利县| 西乌| 太康县| 磐石市| 渝中区| 交城县| 古田县| 清镇市| 青龙| 酉阳| 砀山县| 奉化市| 诏安县| 黄平县| 巴塘县|