如何订阅 Spec 对象 (TextInputField)
How to subscribe to Spec object (TextInputField)
我有带有 textArea 和 textInputField 的简单 Spec 对象。在它旁边我有另一个 Spec 不知道的对象。当我将一些文本写入 textInputField 时,我需要将包含此文本的消息发送到另一个 class。我试过播音员,但它不起作用。有没有办法通知其他对象并发送此文本?
您正在寻找 acceptBlock:
每次文本值更改时都会调用一个块:
| cm |
cm := TextInputFieldPresenter new.
cm autoAccept: true.
cm acceptBlock: [ :txt | doSomething with: txt.].
您可以在规格手册中找到这个以及更多关于规格的信息:
http://books.pharo.org/spec-tutorial/
请注意,在较新版本的 pharo 中,规范 类 已从 ...Model
重命名为 ...Presenter
,这尚未反映在手册中。所以你使用 TextInputFieldModel
还是 TextInputFieldPresenter
取决于你的 pharo 版本。
我有带有 textArea 和 textInputField 的简单 Spec 对象。在它旁边我有另一个 Spec 不知道的对象。当我将一些文本写入 textInputField 时,我需要将包含此文本的消息发送到另一个 class。我试过播音员,但它不起作用。有没有办法通知其他对象并发送此文本?
您正在寻找 acceptBlock:
每次文本值更改时都会调用一个块:
| cm |
cm := TextInputFieldPresenter new.
cm autoAccept: true.
cm acceptBlock: [ :txt | doSomething with: txt.].
您可以在规格手册中找到这个以及更多关于规格的信息: http://books.pharo.org/spec-tutorial/
请注意,在较新版本的 pharo 中,规范 类 已从 ...Model
重命名为 ...Presenter
,这尚未反映在手册中。所以你使用 TextInputFieldModel
还是 TextInputFieldPresenter
取决于你的 pharo 版本。