Dans Dolphin Smalltalk, j'ai défini un menu contextuel dans une vue arborescente, mais ce menu s'affiche chaque fois que je clique avec le bouton droit sur l'arbre, même si je clique sur un espace vide. Comment limiter la fenêtre contextuelle aux seules lignes existantes de l'arborescence? Cordialement. Maurizio.Limiter le menu contextuel
1
A
Répondre
1
Enfin, je l'ai trouvé.
Pour les personnes intéressées:
Dans la méthode CreateSchematicWiring:
treePresenter
when: #rightButtonPressed:
send: #onRightButtonPressed:
to: self
et c'est la méthode "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]
où la méthode getMenu retourne un menu en fonction de la type d'objet sur lequel j'ai cliqué.
Pouvez-vous partager plus de détails ou une capture d'écran? –