作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在构建一个使用插件的应用程序。我正在使用出色的JVCL插件框架。我首先开始使用软件包插件。它像一个魅力一样工作,但有一个很大的缺点:需要给运行时bpl(23Mo)。所以我切换到DLL插件。
我需要从hostapplication调用一个方法(具有3个参数的过程),但是我不知道该怎么做。 OBone在Jedi newgroup中解释了使用回调函数,但是我不知道如何实现此功能。
有人可以请我解释一下,或者可以给我一个例子吗?您可以获取JVCL 1SimplePlugin演示并进行更新。
预先感谢
BR
斯蒂芬·维兹比奇(Stephane Wierzbicki)
最佳答案
基本概念非常简单。回调方法是指向传递给某些代码的方法的指针,以便可以在特定时间调用它,以允许您自定义其行为。如果您有任何使用Delphi的经验,那么您已经熟悉了使用不同名称的回调方法:“事件处理程序”。
在您的插件中尝试以下操作:
type
TMyEvent = procedure(param1, param2, param3: integer) of object;
procedure AddCallback(callback: TMyEvent);
if assigned(FCallback) then
FCallback(param1, param2, param3);
MyPlugin.AddCallback(self.callbackProc);
关于delphi - 如何在DLL(Delphi/TJVPluginManager + TJvPlugin)中实现回调方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1839217/
我目前正在开发一个简单的程序,该程序实现带有 dll 库的插件(使用 JVCL 框架中的 TJvPluginManager)。 到目前为止,我已经弄清楚如何使用此组件来处理命令,但是如果我想从库内的自
我正在构建一个使用插件的应用程序。我正在使用出色的JVCL插件框架。我首先开始使用软件包插件。它像一个魅力一样工作,但有一个很大的缺点:需要给运行时bpl(23Mo)。所以我切换到DLL插件。 我需要
我是一名优秀的程序员,十分优秀!