python tkinter基本属性详解

yipeiwu_com5年前Python基础

1.外形尺寸

尺寸单位:只用默认的像素或者其他字符类的值!,不要用英寸毫米之类的内容。

btn = tkinter.Button(root,text = '按钮')
# 设置按钮尺寸,绝大多数默认单位是像素
btn.pack(ipadx = 100,ipady = 20)

2.坐标系

btn = tkinter.Button(root,text = '按钮')
# 坐标系
btn.place(x = 100,y = 50)

3.颜色

# 颜色:颜色单词
btn = tkinter.Button(root,text = '颜色',bg = 'blue')
btn.pack()
# 颜色:hex颜色  0-255 ---> 使用十六进制
btn = tkinter.Button(root,text = '颜色',bg = '#ff0000')
btn.pack()

4.字体属性

# 字体:可以设置字体类型和字体大小
btn = tkinter.Button(root,text = '字体',font = ('黑体',40))
btn.pack()
# 依次为字体类型,字体大小,后面就无所谓了
btn = tkinter.Button(root,text = '颜色',font =('黑体',40,'bold','italic'))
btn.pack()
#bold:粗体,italic:斜体,overstrike:横穿线

5.锚点

# 文字出现在按钮的左上角
btn = tkinter.Button(root,text = '锚点',anchor = 's')
btn.pack(ipadx = 20,ipady = 20)
# 锚点的值如下
# nw   n    ne
# w    center e
# sw   s    se

6.三维效果

# 三维效果也可以直接relief = 'flat'
btn = tkinter.Button(root,text = '3D',relief = tkinter.FLAT)
btn.pack()
# 三维效果有:flat:平的、raised:凸起(默认)、sunken:凹陷、groove、ridge 具体什么样自己尝试

7.位图

# 位图
btn = tkinter.Button(root,text = '位图',bitmap = 'question')
btn.pack()
# 各种位图
# error|gray75|gray50|gray25|gray12|hourglass|info|questhead|question|warning

8.鼠标

# 鼠标样式
# 当鼠标放到组件上时,鼠标变成心形
btn = tkinter.Button(root,text = '鼠标',cursor = 'heart')
btn.pack(ipadx = 30,ipady = 20)

# 鼠标在主界面时为心形
root['cursor'] = 'heart'

部分鼠标图形代码:

9.图片设置

# 图片设置
# 将图片设置为图像对象
tupian= tkinter.PhotoImage(file = '123.gif')
# 将按钮设置为图片
btn = tkinter.Button(root,text = '图片',image = tupian)
btn.pack()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python通过pil将图片转换成黑白效果的方法

本文实例讲述了python通过pil将图片转换成黑白效果的方法。分享给大家供大家参考。具体分析如下: pil功能强大,convert方法可以轻易的将图片转换,下面的代码可以将图片转换成黑...

Python 3.8中实现functools.cached_property功能

前言 缓存属性( cached_property )是一个非常常用的功能,很多知名Python项目都自己实现过它。我举几个例子: bottle.cached_property Bottl...

Python中二维列表如何获取子区域元素的组成

Python中二维列表如何获取子区域元素的组成

用过NumPY的应该都知道,在二维数组中可以方便地使用区域切片功能,如下图: 而这个功能在Python标准库的List中是不支持的,在List中只能以一维方式来进行切片操作: 但有时...

Python多线程编程之多线程加锁操作示例

本文实例讲述了Python多线程编程之多线程加锁操作。分享给大家供大家参考,具体如下: Python语言本身是支持多线程的,不像PHP语言。 下面的例子是多个线程做同一批任务,任务总是有...

在unittest中使用 logging 模块记录测试数据的方法

如下所示: # -*- coding:utf-8 -*- import sys import logging import unittest import os reload(sy...