如何禁用Delphi表单中的所有操作

4

我有一个带有一些操作的表单。 当我调用我的LogOff过程时,我需要禁用所有操作。 我该怎么做?


你知道如何禁用一个操作吗?对于每个你想要禁用的操作都要执行相同的步骤。几乎肯定不是一个好主意去禁用所有操作。(特别是考虑到你可能想在登录“操作”之后再次启用它们;而启用/禁用状态可能取决于更多的因素,而不仅仅是“IsUserLoggedIn”。) - Disillusioned
只需使用 form1.enabled := false 禁用整个表单。 - Freddie Bell
2个回答

9
如果你所说的“actions”是指使用ActionList,那么请将其“State”设置为“asSuspended”。根据文档,则:
“在操作列表中的操作不会响应客户端对象要求它们“触发”的行为。列表中所有操作的Enabled属性保持不变。”

4

如果您使用“ActionList”,可以尝试以下方法:

ActionList1.State:=asSuspended;

这将暂停ActionList中的所有操作。

如果您想重新启用它,请使用:

ActionList1.State:=asNormal;

如果您正在使用“ActionManager”,您可以使用相同的方式:
ActionManager1.State:=asSuspended;

如果想再次启用它:
ActionManager1.State:=asNormal;

祝你好运。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接