Tk用户界面编程:几何管理、定时器、事件绑定与俄罗斯方块游戏实现
1. 几何管理
几何管理是在屏幕上排列小部件,并在屏幕大小调整时指定重新排列策略的艺术。Tk支持三种类型的几何管理器:定位器(placer)、打包器(packer)和网格(grid)。
- 定位器(Placer) :是最简单的几何管理器,类似于Motif的公告板小部件或Visual Basic的几何管理策略,需要为每个小部件指定x和y坐标。具体细节可参考Tk文档。
- 打包器(Packer) :是一种强大的基于约束的几何管理器,类似于Motif的表单小部件。
pack()
方法实现了打包算法。调用$widget->pack()
是请求小部件将自己打包到其包含小部件内的下一个可用空间中。- 打包顺序 :调用
pack
的顺序决定了打包顺序,进而决定了小部件可访问的可用空间量。当容器调整大小时,打包算法会以相同的顺序再次运行。 - 填充方式 :由
fill
值决定,包括x
(在x方向扩展小部件以填充包裹的宽度)、y
(扩展以填充高度)、both
或none
。ipadx
和ipady
选项为小
- 打包顺序 :调用