现在我们用画布canvas上的bind_all函数来告诉tkinter当特定事件发生时应该调用这个函数。代码如下: from tkinter import* tk = Tk() canvas = Canvas(tk,width=400,height=400) canvas.pack() canvas.create_polygon(10,10,10,60,50,35) def movetriangle(event): canvas.move(1,5,0) canvas.bind_all('<...
简介: Python tkinter库之Canvas按键事件移动物体 (模拟推箱子小游戏) Canvas上的物体用 bind_all(键值,事件函数(event)) 绑定后,就可用move(物体的id,横向移动坐标,纵向移动坐标) 来移动物体了。以下代码模拟了推箱子小游戏中箱子移动的动作,仅限制了边界暂没有添加其它箱子和砖墙等障碍物: import tkinter as tk...
现在我们用画布canvas上的bind_all函数来告诉tkinter当特定事件发生时应该调用这个函数。代码如下: fromtkinterimport*tk=Tk() canvas= Canvas(tk,width=400,height=400) canvas.pack() canvas.create_polygon(10,10,10,60,50,35)defmovetriangle(event): canvas.move(1,5,0) canvas.bind_all('<KeyPress-Retu...
anchor: 组件的对齐方式,顶对齐'n',底对齐's',左'w',右'e' side: 组件在主窗口的位置,可以为'top','bottom','left','right'(使用时tkinter.TOP,tkinter.E); fill 填充方式 (Y,垂直,X,水平) expand 1可扩展,0不可扩展 grid组件使用行列的方法放置组件的位置,参数有: column: 组件所在的列起始位置;...
tkinter.Canvas 创建画布: 创建“画布” 执行结果: 画布属性: move 移动 delete 删除 winfo_height 获取窗口高度(update刷新之后才能获取) winfo_width() 获取窗口宽度(update刷新之后才能获取) coords 获取目标当前坐标 itemconfig 修改组件属性 画布组件:
4.2.1 Tkinter控件概览 在Tkinter模块中提供了各种各样的控件,如按钮、标签和文本框。这些控件通常也称为组件或者部件。其中最主要的控件如下。 Button:按钮控件,用于在程序中显示按钮。 Canvas:画布控件,用于显示图形元素,如线条或文本。 Checkbutton:多选框控件,用于在程序中提供多项选择框。
6 button1.pack(side=tkinter.LEFT) #将button1添加到root主窗口 7 button2=tkinter.Button(root,text='Button2') 8 button2.pack(side=tkinter.RIGHT) 9 root.mainloop() #进入消息循环(必需组件) 3、tkinter中的15种核心组件 Button 按钮; Canvas 绘图形组件,可以在其中绘制图形; ...
方法/步骤 1 canvas其实就是画布,是各种图形的载体。比如,下面的代码创建了一个绿色的画布:from tkinter import *root = Tk()cv = Canvas(root,bg = 'green')cv.pack()root.mainloop()2 在画布里面画一个矩形:cv.create_rectangle(10,20,365,200)注意此时,这个矩形左上角的坐标是(10,20)...
8 button2.pack(side=tkinter.RIGHT) 9 root.mainloop() #进入消息循环(必需组件) 3、tkinter中的15种核心组件: Button 按钮; Canvas 绘图形组件,可以在其中绘制图形; Checkbutton 复选框; Entry 文本框(单行); Text 文本框(多行); Frame 框架,将几个组件组成一组 ...
挡板的移动通过键盘事件来控制,通过self.canvas.bind_all方法来绑定键盘事件 当停止按键时,挡板就会停止移动 总结 打砖块游戏是一个经典的游戏,通过这个项目,我们学习了如何使用Python的tkinter库实现一个游戏 tkinter是虽然很丑,但是好用哈哈哈哈 之所以不选择pygame, 是因为小游戏对性能要求很低,要选择学习门槛比较低的...