我有41个按钮,当您在VisualWorks中单击它们时,它们必须变为不可见。只需一行。
(self builder componentAt: #buttonWhichCalledTheMethod) beInvisible.
我尝试过使用self
,但这就是整个表格。
This context
也会产生错误does not understand
。两者都在我单击按钮后发生。
有什么办法可以使用某些东西作为发件人?
答案 0 :(得分:0)
我不确定我是否完全理解您要达到的目标。似乎您尝试使用相同的代码使按钮不可见,从而触发了您当前正在运行的方法。 由于小部件和应用程序代码之间的脱钩,因此实际上无法猜测哪个按钮触发了某种方法。 一个简单的解决方案是保留一个字典,在字典中映射选择器和按钮ID并进行查找。
调用这些方法的方式是通过在#actionFor:
中创建的块传递选择器,因此,如果您的按钮具有与其选择器相同的ID,则可以覆盖#actionFor:
不仅执行按键,但也禁用按钮。
PS:永远不要使用thisContext
或#doesNotUnderstand: