2

我正在尝试显示一个窗口,但我不断收到一条消息不理解错误。片段:

Window new
  label: 'Hello';
  open
4

2 回答 2

3

你可以使用这个:

ScheduledWindow new
    label: 'Hello';
    open

或打开更大:

ScheduledWindow new
    label: 'Hello';
    openIn: (20@20 extent: 300@300)

但是,我怀疑这不是您真正想要做的,因为很难使用以这种方式构建的窗口。你能解释一下你想做什么吗?

于 2012-11-08T22:15:59.313 回答
2

好的,对于这样的游戏,您想使用自定义控件。您首先为您的游戏创建 View 的子类并覆盖 displayOn: 方法来显示视图。您可以使用 ViewHolder 将视图添加到 UIPainter 画布。将 View: 属性设置为返回自定义视图的方法的名称。

要拦截鼠标点击,您需要有一个用于视图的自定义控制器。您将继承 Controller 或其子类之一来创建 Controller。View 中名为 defaultControllerClass 的方法返回控制器类的名称。在控制器中,可以拦截鼠标事件。

我建议您加载一个示例游戏以帮助您入门。打开包裹管理器,然后从列表中选择玩具。您应该在那里看到 SpiderSolitaire。这是一个为 VisualWorks 编写的游戏,它显示一个自定义视图,在该视图上做一些简单的动画,并拦截鼠标事件。这应该作为一个很好的例子来使用。

于 2012-11-09T22:55:02.447 回答