更多GUI之移动按钮,,


  移动按钮

  如果想对这个按钮做些操作,怎么指示按钮呢?PythonCard为窗口中的所有组件维护了一个列表,这个列表名为self.components。如果希望特别对这个按钮做某个处理,需要用它的名字helloButton,并结合这个列表的名字。也就是self.components.helloButton。

  在代码清单20-1的例子中,每次点击按钮时会让它移动,按钮在窗口中的位置由它的position属性确定,也就是self.components.helloButton.position。postiton属性是一个列表,这个列表包含两个元素:X 位置和Y 位置。它们都是整数。X 位置是与窗口左边的距离,Y位置是与窗口顶边的距离 ,窗口左上角的位置是【0,0】(这与Pygame中一样)。

  要移动按钮,只需要改变它的位置,这个工作由代码清单20-1的第6行到第12行完成(本来做这个工作不需要这么多行代码,不过我希望你能轻松地读懂代码在做什么,所以对于每一个小步骤我都编写了单独的一行代码)

  运行这个程序时,你会看到,点击几次后,按钮会从窗口右下角消失,如果还想看到按钮,可以调整窗口的大小(拖动窗口边界或者窗口的某个角),让窗口更大,这样你就又能看到按钮了,完成时可以关闭窗口,你可以点击标题栏中的X,或者使用“File”> “Exit”菜单来关闭。

  可以注意到,与Pygame不同,现在我们不用操作把按钮从它的老位置“擦除”,再在新位置上重绘,我们只需要移动按钮,所有这些擦除和重绘工作都会由PythonCard来完成。

  更多有用的GUI

  我们的第一个PythonCard GUI对于了解如何在PythonCard中建立一个GUI确实很不错,但是这个程序没什么用处,也没有太大意思,所以,在本章后面和第22章中,我们打算再完成两个项目,首先是一个小项目,另一个项目稍微大一些,通过这两个项目,我们会对PythonCard的使用有更多了解。

  第一个项目是PythonCard版本的温度转换程序。在第22章中,我们将会使用PythonCard建立游戏Hangman的GUI版本。

评论关闭