在Dolphin Smalltalk中,我在树视图上设置了一个上下文菜单,但每当我右键单击树上的每个菜单时,即使我点击一个空白区域,也会出现此菜单。 如何将弹出窗口限制为仅存在于树的现有行? 最好的祝福。 莫里吉奥。
答案 0 :(得分: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方法根据我点击的对象类型返回菜单。