我对 Delphi 比较陌生,所以请原谅我的无知。
作为练习,我正在编写一个MasterMind小游戏,其思想是,当用户得到正确的数字时,执行一个自定义方法(Congrats
)。
这个方法中的一个选项是重新播放。接下来的一个明显步骤是必须将窗体重置为默认(“启动”)状态。我为此创建了一个类型方法(Resetform
,在public
中声明为方法,因为它需要访问控件)。我不能从Congrats
调用它,但我注意到我可以从其他事件处理程序调用它。
有可能做到这一点吗?如果有可能,我该如何着手?
从事件处理程序起作用,但不能从自定义过程起作用。
1条答案
按热度按时间yduiuuwa1#
方法
Resetform
是窗体的一个方法,这就是为什么你可以从窗体的事件处理程序调用它,它们驻留在同一个对象中。要从窗体上下文之外调用
Resetform
,需要一个对窗体的引用,否则代码将不知道需要在窗体的哪个示例上调用Resetform
。现在,假设您从表单调用
Congrats
,您可以添加一个参数并如下调用它:您的过程可以实现为
但是,您也可以将
Congrats
作为表单的方法。如果
Congrats
不是从窗体调用的,那么您需要找到另一种方法将窗体的引用传递给函数,或者使用另一种方法。