删除变形以捕捉到网格(Cuis Smalltalk)

时间:2013-12-13 11:11:02

标签: smalltalk morphic

我需要在Cuis中更改哪种方法,使用 PasteUpMorph 来删除变形以捕捉到10 x 10像素网格?

1 个答案:

答案 0 :(得分:3)

打开方法查找器:世界/开放/消息名称 在文本框中输入“drop”。单击(搜索)。 显示的第一条消息是#acceptDroppingMorph:event:我们很幸运! 在PasteUpMorph的实现结束时添加:

p := aMorph morphPosition.
p := (p x roundTo: 10) @ (p y roundTo: 10).
aMorph morphPosition: p.

就是这样。也许你想要使用自己的变形而不是世界,然后你可以向世界添加一个DragAndDropAreaMorph,并且该类添加了这个方法:

acceptDroppingMorph: aMorph event: evt
    | p |
    super
        acceptDroppingMorph: aMorph
        event: evt.
    p := aMorph morphPosition.
    p := (p x roundTo: 10) @ (p y roundTo: 10).
    aMorph morphPosition: p