社区
Delphi
帖子详情
ocx 实现回调函数,delphi开发
luyo7400
2011-11-11 09:14:19
现在我的控件要实现一个回调函数给由web做成的网页使用? 该如何写,参数应该是一个指针,可是ocx没有自定的参数类型,该使用什么呢? 跪求答案,本人对COM所知甚少。是用delphi开发
...全文
261
9
打赏
收藏
ocx 实现回调函数,delphi开发
现在我的控件要实现一个回调函数给由web做成的网页使用? 该如何写,参数应该是一个指针,可是ocx没有自定的参数类型,该使用什么呢? 跪求答案,本人对COM所知甚少。是用delphi开发
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
shijies
2011-11-15
打赏
举报
回复
如果将ocx嵌入到网页里是显示结果的,HTML文件只是一个载体,HTML文件并不是程序,不能调用函数,莫非是活动服务器程序?
luyo7400
2011-11-11
打赏
举报
回复
非常感谢两位的回答,但是还有一个问题就是:如果我在delphi里面怎么去调用这个事件呢?没有响应啊
nm_wyh
2011-11-11
打赏
举报
回复
1、在ActiveX控件的YouActiveXEents接口中定义一个事件。这个就是外部要调用的。
在【View】->【Type Library】中创建。就在创建方法的下面就是一般名称为【xxxxxActvieXEvents】.例如我们这里定义如下事件:
OnTest(aValue:string); //实际生成的代码应该是procedure OnTst(const aValue: WideString); dispid 209; 在_TLB单元里。
2、在页面中JS如些调用:
<script language="javascript" event="OnTest(aValue)" for="YouActiveXName">
alert(aValue); //接收控件中的事件消息,并显示传递 的值。
</script>
3、在ActiveX控件中触发这个事件,如下:
//向Web页面事件发送消息
if FEvents <> nil then
FEvents.OnTest('成功了');
wzwcn
2011-11-11
打赏
举报
回复
其实就是事件。在接口Events组下加一个事件,定好参数,然后在适当的时音调用:
if FEvents <> nil then FEvents.xxxx;
就行了,至于js怎么绑定事件,自己查一下
shijies
2011-11-11
打赏
举报
回复
网页使用函数干什么?网页与客户端交互?delphi开发网络应用程序的方法有好几个,用那种?
luyo7400
2011-11-11
打赏
举报
回复
nm_wyh
(冰河)
帮忙解决下啊,现在调用根本进不了ocx的事件里来啊
luyo7400
2011-11-11
打赏
举报
回复
procedure TWingSoftVideo.Initialize;
begin
inherited Initialize;
OnActivate := ActivateEvent;
OnClick := ClickEvent;
OnCreate := CreateEvent;
OnDblClick := DblClickEvent;
OnDeactivate := DeactivateEvent;
OnDestroy := DestroyEvent;
OnKeyPress := KeyPressEvent;
OnPaint := PaintEvent;
OnTest := TestEvent;
这里需要声明onTest原型事件,TestEvent的内容为
procedure TWingSoftVideo.TestEvent(Sender: TObject; var Param1: Integer);
begin
if FEvents <> nil then FEvents.OnTest(Param1);
Param1 := 1000;
end;
可是在声明OnTest := TestEvent;的时候,会提示OnTest未申明,而我按你的方法在_xxxxxActvieXEvents里面已经添加了OnTest事件TWingSoftVideoOnTest = procedure(ASender: TObject; var Param1: Integer) of object;
,那为什么还是会报OnTest没有申明啊,很困扰!
nm_wyh
2011-11-11
打赏
举报
回复
如果在DELPHI中调用还得改代码,这里只实现了Web的。
DELPHI中的可以仿照ActiveX单元中的去写。它在里面也定义了下些事件。
nm_wyh
2011-11-11
打赏
举报
回复
if FEvents <> nil then
FEvents.OnTest('成功了');
这个就是的ActiveX控件中触发这个事件职!在DELPHI里调用,如果不成功,很有可能是FEvents为空了。跟踪一下!
Delphi
5
开发
人员指南
9.10 从DLL中调用
回调函数
253 9.11 在不同的进程间共享DLL数据 256 9.11.1 一个可以被共享数据的DLL 256 9.11.2 访问DLL中的共享数据 259 9.12 引出DLL中的对象 261 9.13 总结 265 第10章
Delphi
5的打印 266 10.1 ...
D5
开发
人员指南-02卷
9.10 从DLL中调用
回调函数
253 9.11 在不同的进程间共享DLL数据 256 9.11.1 一个可以被共享数据的DLL 256 9.11.2 访问DLL中的共享数据 259 9.12 引出DLL中的对象 261 9.13 总结 265 第10章
Delphi
5的打印 266 10.1 ...
易语言程序免安装版下载
为
实现
静态编译,易语言编译器、核心支持库、集成
开发
环境(IDE)等均有重大更新,支持库
开发
架框有扩展性调整,绝大多数官方支持库都已针对静态编译完成自身改造并提供静态库。 目前绝大多数官方支持库均已支持...
DELPHI
OCX
控制与页面通过javascript交互
<HTML> <H2>控件测试 </H2><p> <HR><center><P> <OBJECT id='Test
OCX
' classid="clsid:3753F975-368A-4A19-94CB-1E800D8215FA... codebase="Test
OCX
.
ocx
#ve...
104_《
Delphi
5
开发
人员指南》
本书主要介绍
Delphi
5 各方面的编程技巧,首先通过编写小而实用的应用程序,为
Delphi
5 程序
开发
打下了一个牢固的基础;继而讨论了基于VCL和基于COM的
开发
技术,并全面介绍了数据库编程技术,包
Delphi
5,388
社区成员
262,730
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章