我正在尝试显示一个窗口,但我不断收到一条消息不理解错误。片段:
Window new
label: 'Hello';
open
你可以使用这个:
ScheduledWindow new
label: 'Hello';
open
或打开更大:
ScheduledWindow new
label: 'Hello';
openIn: (20@20 extent: 300@300)
但是,我怀疑这不是您真正想要做的,因为很难使用以这种方式构建的窗口。你能解释一下你想做什么吗?
好的,对于这样的游戏,您想使用自定义控件。您首先为您的游戏创建 View 的子类并覆盖 displayOn: 方法来显示视图。您可以使用 ViewHolder 将视图添加到 UIPainter 画布。将 View: 属性设置为返回自定义视图的方法的名称。
要拦截鼠标点击,您需要有一个用于视图的自定义控制器。您将继承 Controller 或其子类之一来创建 Controller。View 中名为 defaultControllerClass 的方法返回控制器类的名称。在控制器中,可以拦截鼠标事件。
我建议您加载一个示例游戏以帮助您入门。打开包裹管理器,然后从列表中选择玩具。您应该在那里看到 SpiderSolitaire。这是一个为 VisualWorks 编写的游戏,它显示一个自定义视图,在该视图上做一些简单的动画,并拦截鼠标事件。这应该作为一个很好的例子来使用。