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:
    加数字就行了

你可能感兴趣的:(Python,tkinter,定位)