我想以一种简单的方式处理鼠标点击变形。我可以做类似的事情:
'hello' asMorph
onClick: [ :e | "baboom" ];
openInHand
?
像这样的东西?
StringMorph subclass: #ClickMorph
instanceVariableNames: 'action'
classVariableNames: ''
category: 'MyMorph'
handlesMouseDown: evt
^true
mouseDown: evt
evt hand waitForClicksOrDrag: self event: evt
mouseUp: evt
action value
action
^ action
action: anObject
action := anObject
你可以称之为
(ClickMorph contents: 'Click me')
action: [Transcript open];
openInWorld
要点当然是要有一个块并确保您可以对点击做出反应。