smalltalk - 抢ETOY扑克牌
问题描述
我正在尝试制作一个包含纸牌的游戏。我有一个 BorderedMorph 的子类,我添加到所有的牌组中。我有 PlayingCardDeck 的子类,我在其中实现了游戏卡组行为。我没有触及子类中的所有拖放功能,并且当您尝试拖放时遇到相同的错误:
g:= PlayingCardDeck new.
g newDeck.
g layout: #pile.
g openInWorld.
我怎样才能修复这个错误并使我的游戏可拖动,所以我将能够在屏幕上移动它(不仅仅是通过按下滚轮)。
问题出在 PlayingCardMorph 中,因为当我尝试移动空牌组时,我可以做到。
解决方案
好的,我的问题已解决。我的解决方案是为 PlayingCardMorph 创建子类并添加以下方法:
handlesMouseDown: aMouse
^false
希望它可以帮助任何需要它的人。
推荐阅读
- python - 为什么我们在 IP 欺骗中使用本地 IP 地址?
- amazon-web-services - DynamoDB 是否具有锁定行以供读取的机制?
- javascript - 如何从过期的 Kuzzle 令牌服务器端恢复?
- flutter - 将 Flutter SDK 升级到最新版本并 get 和 Error with If
- sql - 如何计算共享值的行结果集的差异?
- swift - 每次按下自定义按钮时,如何设置标准按钮反应?
- c# - 方法应该有签名错误。我能做些什么?
- html - 水平溢出时隐藏的引导多选选项文本
- ruby-on-rails - 尝试推送到 heroku 时,出现“预编译资产失败”。
- hlsl - 从片段着色器 (HLSL) 写入纹理