Python中tkinter编程入门8

在tkinter中,可以使用Canvas控件来显示图片或者文字。

1 Canvas类简介

Canvas的中文意思是“画布”,也是tkinter的控件之一。可以将画布作为控件与窗口关联,之后在画布中画出图片或者文字,相当于在窗口中显示图片或文字了。

2 通过Canvas控件显示图片

2.1 创建Canvas控件

通过图1所示的代码创建Canvas控件。

图1 创建Canvas控件

其中,参数root表示创建的窗口,即将创建的画布放在root窗口中;bg表示画布的背景色,lightblue表示浅蓝色;width和height分别表示创建的画布的高度和宽度。

2.2 创建可以在Canvas中显示的图片

Canvas中显示的图片必须是PhotoImage类的实例,因此,需要将图片文件转换为PhotoImage格式,代码如图2所示。

图2 实例化PhotoImage类

其中,file参数指定了要显示的图片。

注意1 要显示图片的格式只能是PGM, PPM, GIF, PNG四种类型。

2.3 在Canvas中显示图片

通过图3所示的代码,可以在Canvas中显示图片。

图3 在Canvas中显示图片

其中,通过Canvas的实例canvas调用了create_image()方法,该方法的作用是在画布中显示图片。前两个参数表示图片的左上角在画布中的坐标,即图片的位置;anchor参数指定了图片位置的参照物,即原点位置,该参数取值是nw表示原点位于画布的坐上角;image参数指定了要显示的图片,image_file即为在“2.2 创建可以在Canvas中显示的图片”中创建的PhotoImage格式的图片。

2.4 将画布放置到窗口中

通过图4显示的代码,将画布放置到窗口上。

图4 将画布放置到窗口上

2.5 代码运行效果

以上代码运行的效果如图5所示。

图5 显示图片的效果

3 通过Canvas控件显示文字

通过Canvas的实例canvas调用create_text()方法显示文字,代码如图6所示。

图6 显示文字

其中,create_text()方法的前两个参数表示文字显示位置的横纵坐标;anchor表示以Canvas的左上角为原点;text表示显示的内容;fill表示文字颜色;font用于指定字体和字号。以上代码的运行效果如图7所示。

图7 显示文字效果

4 完整代码

在窗口中显示图片和文字的完整代码如下所示。

import tkinter

root = tkinter.Tk()
canvas = tkinter.Canvas(root, bg='lightblue', width=450, height=450)
image_file = tkinter.PhotoImage(file='1.png')
image = canvas.create_image(100
                            , 100
                            , anchor='nw'
                            , image=image_file)
canvas.pack()
text = canvas.create_text(100
                          , 300
                          , anchor='nw'
                          , text='霸天虎标志'
                          , fill='red'
                          , font=('黑体',30))            
root.mainloop()

  • 13
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值