加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

delphi – 无法将函数引用传递给框架中的表单

发布时间:2020-12-15 09:25:18 所属栏目:大数据 来源:网络整理
导读:我有一个我正在构建的应用程序,它有一个带有几个创建的TabSheets的PageControl,我在其上放置了几个预定义的框架.每个框架中都有一个名为“GetValue”的例程,它将其控件的内容解析为字符串并返回结果.在主表格(RGMain)上我有: Type TGetValueFunction = Func
我有一个我正在构建的应用程序,它有一个带有几个创建的TabSheets的PageControl,我在其上放置了几个预定义的框架.每个框架中都有一个名为“GetValue”的例程,它将其控件的内容解析为字符串并返回结果.在主表格(RGMain)上我有:

Type
   TGetValueFunction = Function: String;
...   
Private
   fGetValueFunction: TGetValueFunction;
...      
Public
   Property GetValueFunction: TGetValueFunction Write fGetValueFunction;

在我拥有的每个框架中:

Public
Constructor Create(AQwner: TComponent);
...
Interface
Constructor TBooleanChoiceFrame.Create(AOwner: TComponent);
   Begin
   Inherited Create(AOwner);
   RGMain.GetValueFunction := GetValue; <<<< compile error on this line
   End;

E2009不兼容的类型:’常规过程和方法指针’

除了纠正问题之外,这是解决每个帧中访问GetValue例程的问题的正确方法吗?

解决方法

如果要使用类的方法,则必须声明函数类型,如下所示:

Type
   TGetValueFunction = Function: String of object;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读