Tkinter基礎總結一

tkinter python自帶的gui庫,對圖形圖像處理庫tk的封裝

1.概念介紹:

組件:組成界面的構成內容就是組件(按鈕,文本輸入框,滾動條,菜單,列表)
窗口:一個軟件的矩形區域

2.界面開發最小內容:

1.導入tkinter模塊
2.創建主窗口對象
3.將創建對象加入消息循環中

3.組件的擺放方式(禁止同時使用兩種佈局)

pack() 方式 —>方向方位擺放
grid() 方式 —>網格擺放
place() 方式 —>定位擺放

a)pack()方式:
  • side 設置組件相對於父組件的擺放位置(top,bottom,left,right)
  • fill 按鈕充滿x/y軸(x,y,both)
  • ipadx,ipady 設置組件之間的內部間距(x,y)
  • padx,pady 設置多個組件之間的外部間距(x,y)
  • expand 設置side是否生效(yes,no)
    注意:僅僅使用pack無法實現表格方式,必須藉助後面的Frame組件纔可以實現
b) grid()方式:
  • row 設置行數 默認0
  • column 設置列數 默認0
  • rowspan 設置跨行數量
  • columnspan 設置跨列數量
  • ipadx,ipady 設置組件之間的內部間距(x,y)
  • padx,pady 設置多個組件之間的外部間距(x,y)
c) place()方式:

兩組屬性,不可混用

  • 絕對定位:
    x 設置距離左上角的水平長度 px
    y 設置距離左上角的垂直高度 px
    width 設置組件所佔據的寬度 px
    height 設置組件所佔據的高度 px

  • 相對定位:
    relx 設置距離左上角的水平長度(取值0~1)
    rely 設置距離左上角的垂直高度(取值0~1)
    relwidth 設置組件所佔據的寬度(取值0~1)
    relheight 設置組件所佔據的高度(取值0~1)

以上屬性都是相對於界面(父)的寬高百分比,而且可以根據界面大小變化而變化

4.按鈕組件基本屬性tkinter.Button:

  • 字體font
    按照元組()形式寫入參數列表,亦有tkFont模塊,tkinter.font

  • 背景顏色bg
    單詞/16進制

  • 錨點anchor
    八個方位帶center(n,nw,s,sw,e,ne,se,w)

  • 三維效果relief
    設置按鍵凸起,凹陷效果(flat,groove,raised,sunken,ridge)

  • 位圖bitmap(x位圖):
    有(error,gray75,gray50,gray25,gray12,hourglass,info,questhead,question,warning…)
    亦可使用自帶的.xbm格式圖,使用@後跟.xbm文件路徑

5.鼠標cursor:

鼠標放上"對象界面"(按鍵/整個窗口)後所顯示形狀,具體圖形見文檔,例如heart

  • 圖片:
    • 雙色位圖.xbm使用BitmapImage類
      tkinter.BitmapImage(file=f, [background=b], [foreground=c])
      log = tkinter.BitmapImage(“log.xbm”, foreground=“red”)
      標籤(圖像=標誌).grid()
    • 彩色.gif/.pgm/.ppm使用PhotoImage類
      img = tkinter.Image(file)
      tkinter.Button(root, image=img)
    • PIL(Python Imaging Library)支持多種格式圖像,ImageTk類

多行文本對齊justify:
多行文本對齊(center,left,right)

  • 狀態state:

    • disable按鍵不可點擊(灰色) tkinter.DISABLE
    • active鼠標懸停時有值 tkinter.ACTIVE
    • 默認是normal tkinter.NORMAL
  • 邊框粗細bd:
    加數字就行了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章