Python tkinter -- 第18章 画布控件之矩形

18.2.20 create_rectangle(bbox, **options)
根据限定矩形 bbox,在画布上创建一个矩形。新创建的对象位于显示的最前端。
(1)bbox:定义要创建对象的边界(x1, y1, x2, y2)
(2)options: 选项的具体含义

选项 含义
activedash 当鼠标经过矩形对象边框的时候,绘制虚线边框
activefill 当鼠标经过矩形对象的时候,矩形内部的填充颜色
activeoutline 当鼠标经过矩形对象边框的时候,绘制轮廓线
activeoutlinestipple 当鼠标经过矩形对象边框的时候,指定填充轮廓线的bitmap。此参数无效。
activestipple 当鼠标经过矩形对象的时候,指定矩形内部填充的bitmap。
activewidth 当鼠标经过矩形对象的边框时候,指定边框的宽度
dash 指定绘制虚线边框
dashoffset 此参数不起作用
disableddash 当矩形对象状态为 DISABLE 的时候,绘制虚线边框
disabledfill 当矩形对象状态为 DISABLE 的时候,矩形内部填充颜色
disabledoutline 当矩形对象状态为 DISABLE 的时候,绘制轮廓线
disabledoutlinestipple 当矩形对象状态为 DISABLE 的时候,指定填充轮廓线的位图
disabledstipple 当矩形对象状态为 DISABLE 的时候,指定填充矩形内部的位图
disabledwidth 当矩形对象状态为 DISABLE 的时候,指定边框的宽度
fill 指定填充的颜色, 空字符串表示透明
offset 指定填充位图的偏移,该选项的值可以是:“x,y”, “#x,y”, N, NE, E, SE, S, SW, W, NW, CENTER
outline 指定边框的颜色
outlineoffset 指定绘制轮廓线位图的偏移,该选项的值可以是:“x,y”, “#x,y”, N, NE, E, SE, S, SW, W, NW, CENTER
outlinestipple 当 outline 选项被设置时,该选项用于指定一个位图来填充边框,默认值是空字符串,表示黑色
state 指定该矩形对象的状态,可以是 NORMAL,DISABLED(不可用,不响应事件)和 HIDDEN(隐藏)。默认值是 NORMAL
stipple 指定一个位图用于填充矩形内部,默认值是空字符串,表示实心
tags 为创建的矩形对象添加标签
width 指定边框的宽度
18.2.20.1 activedash
鼠标经过矩形边线的时候,边框显示为虚线。
import tkinter as tk
root=tk.Tk()
root.geometry('320x240')
b1=tk.Canvas(root)
rect=b1.create_rectangle(20,40,250,100,
                         width=15,activedash=True)
b1.pack()
root.mainloop()

结果:
在这里插入图片描述
18.2.20.2 activefill
鼠标经过矩形的时候,矩形内部的填充颜色。

import tkinter as tk
root=tk.Tk()
root.geometry('320x240')
b1=tk.Canvas(root)
rect=b1.create_rectangle(20,40,250,100,
                         width=15,activefill='blue')
b1.pack()
root.mainloop()

结果:
在这里插入图片描述
18.2.20.3 activeoutline
鼠标经过矩形边框的时候,矩形边框的颜色。

import tkinter as tk
root=tk.Tk()
root.geometry('320x240')
b1=tk.Canvas(root)
rect=b1.create_rectangle(20,40,250,100,
                         width=15,activeoutline='red')
b1.pack()
root.mainloop()

结果:
在这里插入图片描述
18.2.20.4 activeoutlinestipple
定义鼠标经过矩形的时候,填充矩形边框的bitmap。此参数不起作用
18.2.20.5 activestipple
定义鼠标经过多边形的时候,填充多边形的bitmap。矩形必须填充颜色,才能填充bitmap。

import tkinter as tk
root=tk.Tk()
root.geometry('320x240')
b1=tk.Canvas(root)
rect=b1.create_rectangle(20,40,250,100,
                         width=10,fill='red',
                         activestipple='error')
b1.pack()
root.mainloop()

结果:
在这里插入图片描述
18.2.20.6 activewidth
定义鼠标经过矩形边框的时候,设置边框的宽度。如果此参数的数值小于width中的数值,那么使用width的定义的数值。

import tkinter as tk
root=tk.Tk()
root.geometry('320x240')
b1=tk.Canvas(root)
rect=b1.create_rectangle(20,40,250,100,
                         width=10,activewidth=20)
b1.pack()
root.mainloop()

结果:
在这里插入图片描述
18.2.20.7 dash
绘制虚线边框。

import tkinter as tk
root=tk.Tk()
root.geometry('320x240')
b1=tk.Canvas(root)
rect=b1.create_rectangle(20,40,250,100,
                         width=10,dash=True)
b1.pack()
root.mainloop()

结果:
在这里插入图片描述
18.2.20.8 dashoffset
此参数不起作用

18.2.20.9 disableddash
当矩形的状态是tk.DISABLED的时候,显示虚线边框。

import tkinter as tk
root=tk.Tk()
root.geometry('320x240')
b1=tk.Canvas(root)
def state():
    b1.itemconfigure(rect,state=tk.DISABLED)
b2=tk.Button(root,text='Disabled',command=state)
b2.pack()
rect=b1.create_rectangle(20,40,250,100,
                         width=10,disableddash=True)
b1.pack()
root.mainloop()

结果:
在这里插入图片描述
18.2.20.10 disabledfill
当矩形的状态是tk.DISABLED的时候,矩形的填充颜色。具体用法参见18.2.20.2节。
18.2.20.11 disabledoutline
当矩形的状态是tk.DISABLED的时候,绘制轮廓线的颜色。具体用法参见18.2.20.3节。
18.2.20.12 disabledoutlinestipple
当矩形的状态是tk.DISABLED的时候,轮廓线的填充bitmap。不起作用
18.2.20.13 disabledstipple
当矩形形的状态是tk.DISABLED的时候,填充矩形的bitmap。具体用法参见18.2.20.5节。
18.2.20.14 disabledwidth
当矩形的状态是tk.DISABLED的时候,矩形边框的宽度。具体用法参见18.2.20.6节。
说明:对于disabledwidth,不管数值是多少,都是宽度为1的边框。
18.2.20.15 fill
矩形内部的填充颜色。

import tkinter as tk
root=tk.Tk()
root.geometry('320x240')
b1=tk.Canvas(root)
rect=b1.create_rectangle(20,40,250,100,
                         width=5,fill='red')
b1.pack()
root.mainloop()

结果:
在这里插入图片描述
18.2.20.16 offset
使用bitmap作为底纹填充矩形内部的时候,如何放置bitmap。参见18.2.17.16 的说明。

import tkinter as tk
root=tk.Tk()
root.geometry('320x240')
b1=tk.Canvas(root)
rect=b1.create_rectangle(20,40,250,100,
                         width=5,offset=tk.NW,
                         stipple='@x.xbm',fill='red')
b1.pack()
root.mainloop()

结果:
在这里插入图片描述
18.2.20.17 outline
指定轮廓线的颜色。如果没有指定轮廓线的颜色,默认值是黑色的。
18.2.20.18 outlineoffset
使用bitmap作为底纹填充轮廓线时候的如何放置bitmap。此参数不起作用。
18.2.20.19 outlinestipple
指定填充轮廓线的bitmap。此参数不起作用。
18.2.20.20 state
定义矩形的状态。有三种:NORMAL、DISABLED和HIDDEN
18.2.20.21 stipple
指定填充矩形的bitmap。用法参见18.2.20.16 节。
18.2.20.21 tags
给矩形指定标签。也可以通过其他方法指定。
18.2.20.22 width
定义矩形轮廓线的宽度。

猜你喜欢

转载自blog.csdn.net/weixin_42272768/article/details/100873319