3

如何将菜单添加到具有不错操作的列表模型中?

我看过一些代码,例如:

list menu: [ :menu |
  menu
    add: 'Name'
    action: [ "some action" ].

但是当我这样做时,我会收到一个错误,因为该块没有被评估,而是作为消息发送给其他东西......</p>

有菜单指南吗?

4

1 回答 1

3

菜单已重做。

现在你应该做类似的事情

list menu: [ :menu | aMenu addGroup: [:aGroup |
    aGroup addItem: [ :item |
        item
            name: 'Inspect' translated;
            action: [ self inspectSelectedObjectInNewWindow ];
            shortcut: $i command mac | $i alt win | $i alt unix ].
    aGroup addItem: [ :item |
        item
            name: 'Explore' translated;
            action: [ self exploreSelectedObject ];
            shortcut: $i shift command mac | $i shift alt win | $i shift alt unix ] ].

高温下,

本杰明·范·瑞塞格姆

#

编辑: ListModel 仍在使用旧菜单(出于在 Pharo 3.0 中的兼容性原因)。一个工作示例是

ListModel new
    menu: [:m | 
        m 
            add: 'test' 
            target: [self halt ] 
            action: #value. 
        m ];
    openWithSpec

请注意,菜单块应返回菜单(应封装的 PluggableListMorph 的限制)

于 2014-08-11T11:31:06.053 回答