1

在 Dolphin Smalltalk 中,我在树视图上设置了一个上下文菜单,但是只要我右键单击树上的每个位置,即使我单击空白区域,也会出现此菜单。如何将弹出窗口限制为仅树的现有行?此致。毛里齐奥。

4

1 回答 1

1

终于我找到了。

对于那些感兴趣的人:

在 CreateSchematicWiring 方法中:

treePresenter
    when: #rightButtonPressed:
    send: #onRightButtonPressed:
    to: self

这是“onRightButtonPressed”方法:

onRightButtonPressed: aMouseEvent
    | treeView item |
    treeView := treePresenter view.
    item := treeView itemFromPoint: aMouseEvent position.
    item
        ifNil: [treeView contextMenu: nil]
        ifNotNil: [:elem | treeView contextMenu: (treeView objectFromHandle: elem) getMenu]

getMenu 方法根据我单击的对象类型返回一个菜单。

于 2016-08-30T14:06:24.623 回答