gpt4 book ai didi

lisp - 禁用 lispworks capi :push-button-panel 上的单个按钮

转载 作者:太空宇宙 更新时间:2023-11-03 18:43:35 26 4
gpt4 key购买 nike

我正在使用 common lisp 和 LispWorks CAPI 开发四连胜游戏.除了一件事,我已经完成了界面:我使用按钮(在按钮面板中)将片段放入列中,并且我想在相应列已满时禁用按钮。我是 lisp 的新手,尤其不了解面向对象的东西,所以我不知道该怎么做。

可以这样创建一个按钮:

(setf my-button (capi:contain
(make-instance 'capi:push-button
:text "Button!")))

因此禁用:

(capi:apply-in-pane-process 
my-button #'(setf capi:button-enabled) nil my-button)

按钮面板的创建方式类似,只是它需要一个 :items 参数,该参数是一个按钮列表(或数据,CAPI 将从中创建按钮)位于面板。

我只需要知道如何禁用按钮面板的各个按钮。另外,如果你能解释一下最后一段代码中发生了什么,那就太好了,因为我根本不明白。

谢谢!

最佳答案

稍微搜索一下手册就会发现 this function ,它允许您启用/禁用 push-button-panel 中的一个或多个元素。此外,您想要解释的代码使用参数 nilmy-button 调用函数 (setf capi:button-enabled)。但是,此函数在与您的按钮关联的“进程”中调用。 (参见文档 here

(附:如果您需要帮助理解“面向对象的东西”,Practical Common Lisp 可能是有用的资源)

关于lisp - 禁用 lispworks capi :push-button-panel 上的单个按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6326565/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com