python-tkinter组件的使用(2)

(1)Button组件
创建和显示:对象=Button(窗口对象,text=‘button组件显示的文本’,command=单击按钮调用的对象)
对象.pack()
利用button组件显示图片:
bm=(hotoImage(file=’’)
b=Button(win,text=’’,command=单击按钮调用的对象,image=bm)
b.bm=bm
设置button组件的大小:width用于设置宽度,height用于设置高度

from tkinter import*
from tkinter.messagebox import*
win=Tk()
win.title('我的窗口')
def callback():
    showinfo(title='',message='点我干嘛')
b=Button(win,text='点我啊',command=callback,width=100,height=50)
b.pack()
bm=PhotoImage(file='D:\python3\Lib\idlelib\Icons\idle_48.gif')
a=Button(win,text='点我啊',command=callback,image=bm)
a.bm=bm
a.pack()
win.mainloop()

在这里插入图片描述
在这里插入图片描述

bitmap指定按钮上显示的位图
compound指定文本与图像如何在Label上显示,缺省为None,当指定image/bitmap时,文本将被覆盖,只显示图片(left:图像居左,right:图像居右,top:图像居上,bottom:图像居下,center:图像居中)
wraplength指定多少行后开始换行,用于多行显示文本
bg设置背景颜色
fg设置前景颜色
bd设置按钮的边框大小,缺省为1或2个像素
state设置组件状态,正常(NORMAL),激活(ACTIVE),禁用(DISABLED)
from tkinter import*
from tkinter.messagebox import*
win=Tk()
win.title('我的窗口')
b1=Button(win,text='粗边框的按钮',bd=5)
b1.pack()
b2=Button(win,text='不能点击的按钮',state=DISABLED)
b2.pack()
win.mainloop()

在这里插入图片描述
(2)Canvas画布组件
①创建和显示Canvas组件:对象=Canvas=(窗口,选项,选项,……)

bd指定边框的宽度,单位是像素
bg背景颜色
confine指定画布在滚动区域外是否可以动,默认为True不可滚动
height画布高度
width画布宽度
highlightcolor选中画布时的背景色
relief指定画布的边框样式,可选值包括SUNKEN,RAISED,GROOVE,RIDGE
scrollregion指定画布的滚动区域的元组(w,n,e,s)

②显示:对象.pack()
③绘制线条create_line(x0,y0,x1,y1,选项)

arrow指定直线是否使用箭头(none没有箭头,first起点有箭头,last终点有箭头,both两端都有箭头)
arrowshape设置箭头的形状,由三个整数组成,分别代表箭头的填充长度,箭头长度和宽度,如:arrowshape=‘40,40,10’
fill指定线段的颜色
dash指定线段为虚线

④绘制矩形:create_rectangle(矩形左上方的x坐标,左上方的y坐标,右下方的x坐标,右下方的y坐标,选项……)

outline指定边框的颜色
dash指定边框为虚线
stipple使用指定的自定义画刷填充矩形

⑤绘制弧create_arc(弧外框矩形左上角的x坐标,y坐标,右下角的x坐标,y坐标,选项……)

start起始弧度
extent终止弧度

⑥绘制多边形create_polygon(顶点1的x坐标,y坐标,顶点2的x坐标,y坐标……)

smooth指定多边形的平滑程度,等于0是折线,等于1为平滑曲线

⑦绘制椭圆create_oval(包裹椭圆左上角x坐标,y坐标,椭圆的长度,椭圆的宽度,选项……)

from tkinter import*
win=Tk()
win.title('我的窗口')
cv=Canvas(win,bg='white',width=300,height=300)
cv.create_line(10,10,30,80,width=2,dash=7)
cv.create_rectangle(100,100,120,120,outline='blue',fill='yellow',width=2)
cv.create_arc(250,250,280,280,outline='black',fill='red',width=2,start=0,extent=359)
cv.create_polygon(100,5,0,80,200,80,outline='blue',fill='pink',width=2)
cv.create_oval(0,200,150,80,width=2,outline='black',fill='gray')
cv.pack()
win.mainloop()

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值