首页 > 其他分享 >lazarus回调的使用

lazarus回调的使用

时间:2024-03-07 20:56:56浏览次数:9  
标签:Newcallback ... TMyClass lazarus FMyCallback 使用 回调 procedure

一、在要回调的单元加一个回调类

type

TMyCallback =procedure(X, Y: Integer;...其它参数) of object;

二、在单元

TMyClass=class()中加下面的回调过程变量

public
FMyCallback: TMyCallback;

三、在要使用回调的过程、事件、函数中加

procedure TMyClass.click(Sender: TObject);
begin
  //代码1

FMyCallback(x,y,...其它参数);

//代码2
end;

 

四、在调用TMyClass的程序中定义一个过程 

TForm1 = class(TForm)
private

procedure  Newcallback(X, Y: Integer;...其它参数) of object;
public

end;

var

Myclass:TMyClass;

五、实现Newcallback。

六、回调赋值

Myclass.FMyCallback:=@Newcallback;

 

以上就实现了回调。在运行TMyClass.click时运行顺序为:代码1--TForm1.Newcallback-代码2

 

标签:Newcallback,...,TMyClass,lazarus,FMyCallback,使用,回调,procedure
From: https://www.cnblogs.com/jwjss/p/18059727

相关文章

  • SpringBoot 支付宝付款接口类、支付异步回调函数模板
    1.付款接口类1.1.引入Maven依赖<dependency><groupId>com.alipay.sdk</groupId><artifactId>alipay-sdk-java</artifactId><version>4.38.221.ALL</version></dependency>1.2.将下面代码保存为AlipayTemplate.java@Config......
  • 使用贴现率8%和12%分别计算每个项目的净现值(NPV)
    具体代码packageorg.example;importjava.math.BigDecimal;//使用贴现率8%和12%分别计算每个项目的净现值(NPV)publicclassMain{publicstaticvoidmain(String[]args){int[]a1=newint[]{-100000,10000,10000,10000,20000,100000};int[]a2......
  • 万字长文讲解Golang pprof 的使用
    往期好文推荐⭐️⭐️⭐️:#golangpprof监控系列(1)——gotrace统计原理与使用#golangpprof监控系列(2)——memory,block,mutex使用#golangpprof监控系列(3)——memory,block,mutex统计原理#golangpprof监控系列(4)——goroutinethread统计原理#golangpprof......
  • 用promise定义方法时如何避免 自执行/周期影响 多次执行问题:将promise作为方法的回调
    如果你在Promise内部定义了异步操作,并希望避免Promise在创建时自动执行,你可以将这些异步操作封装在一个函数内,并在需要时调用该函数。这样可以确保在适当的时机执行异步操作,而不是在Promise对象创建时或周期更新时(会重新定义变量)立即执行。 以下是一个示例,演示了如何在Promise......
  • Docker使用docker-compose.yml文件(六)
    前言前面介绍的都是单个容器部署,对于多容器部署也是一个个部署。这里Docker开发了docker-compose.yml。它是一个YAML格式的文件,用于定义和运行多容器的Docker应用程序。它允许你使用单个命令来启动、停止和重启应用程序,以及管理应用程序依赖的服务。一、配置yml文件versio......
  • 如何在langchain中使用openapi
    如何在langchain中使用openapi获得APIKey在当前文件夹里面建一个名为.env的文件,内容如下OPENAI_API_KEY=sk-xxxhNsNyUaQvHc3JyOPENAI_API_BASE=https://api.fe8.cn/v1使用在自己的项目文件夹下,安装项目依赖的包pipinstallpython-dotenvlangchain-openai新建......
  • sqlalchemy的快速使用
    sqlalchemy是一个企业级的orm框架类似于Django的orm框架---》只能用在django框架中,不能用在别的位置sqlalchemy可以单独使用,也可以用在其他框架中安装pipinstallsqlalchemySQLAlchemy本身无法操作数据库,其必须依赖pymsql等第三方插件#Dialect用于和数据API进行交......
  • MATLAB基本使用及SIMULINK建模仿真实验
    这是我总结的操作方法:1) M脚本文件的编写1、新建M-file;2、输入指令;3、保存(注意:保存路径需要与工作路径一致) 2)在SIMULINK中创建系统模型的步骤1、新建一个空白的 模型窗口。2、在SIMULINK模块库浏览器中,将创建系统模型所需要的功能模块用鼠标拖放到新建的模型窗口中......
  • linux 入门(七)-ffmpeg使用
    linux入门(七)1:安装ffmpegubuntu下安装ffmpeg:sudoapt-getinstallffmpeg2:ffmpeg--helpffmpegversion4.2.7-0ubuntu0.1Copyright(c)2000-2022theFFmpegdevelopersbuiltwithgcc9(Ubuntu9.4.0-1ubuntu1~20.04.1)configuration:--prefix=/usr--ex......
  • java使用ssh通道连接mysql
    添加依赖<dependency><groupId>com.jcraft</groupId><artifactId>jsch</artifactId><version>0.1.55</version></dependency>添加配置importcom.jcraft.jsch.JSch;......