[英]Add click event handling to morph
I want to handle mouse click on a morph in an easy way. 我想以简单的方式处理鼠标点击变形。 Can I do something like: 我可以这样做:
'hello' asMorph
onClick: [ :e | "baboom" ];
openInHand
? ?
Something like this? 像这样的东西?
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
You can call that as 你可以称之为
(ClickMorph contents: 'Click me')
action: [Transcript open];
openInWorld
The essentials are of course to have a block and to make sure you can react to a click. 要点当然是有一个块,并确保你可以对点击作出反应。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.