社区
Windows SDK/API
帖子详情
Delphi中自定义浏览器,如何判断 packed record对象为空
苏丹-陈
2005-05-13 07:08:46
参考VC的源代码,改写成Delphi程序。VC中好多参数传递是通过指针传递的。
但是,Delphi Import进来的MSHTML_TLB中,函数的参数成了 packed record类型。
VC中判断指针参数是否为空,我在Delphi中如何处理。
有谁自定义过浏览器,实现IHTMLPainter接口,帮忙指点一下。
...全文
346
7
打赏
收藏
Delphi中自定义浏览器,如何判断 packed record对象为空
参考VC的源代码,改写成Delphi程序。VC中好多参数传递是通过指针传递的。 但是,Delphi Import进来的MSHTML_TLB中,函数的参数成了 packed record类型。 VC中判断指针参数是否为空,我在Delphi中如何处理。 有谁自定义过浏览器,实现IHTMLPainter接口,帮忙指点一下。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
naughtyboy
2005-05-23
打赏
举报
回复
prcNew:tagRECT;
这本来就是一个结构体
定义后系统会自动分配内存
RECT *prcNew 这里是为了参数的传出
而在delphi中var已经实现这个功能
苏丹-陈
2005-05-14
打赏
举报
回复
还是怀疑 Delphi Import TypeLib导入的MSHTML_TLB.pas有问题?谁你给一个明确的答案
这是C++接口
IHTMLEditHost::SnapRect Method Internet Development Index
--------------------------------------------------------------------------------
Called by MSHTML whenever a selected element is resized or moved in the editor.
Syntax
HRESULT SnapRect( IHTMLElement *pIElement,
RECT *prcNew,
ELEMENT_CORNER eHandle
);
苏丹-陈
2005-05-14
打赏
举报
回复
首先,不知道是否给prcnew 分配了内存,因为var 参数由MSHTML提供,(应该是这样的)。
如果为空,我调用fillchar(prcnew,sizeof(tagRECT),0);是否会出错。
你说,判断里面参数是否为空,是指prcnew里面的变量是否为空,还是@prcnew是否为空?
naughtyboy
2005-05-14
打赏
举报
回复
那个输出参数
传入前先清空fillchar(prcnew,sizeof(tagRECT),0);
然后判断里面参数是否为空就行了
苏丹-陈
2005-05-13
打赏
举报
回复
IHTMLEditHost = interface(IUnknown)
['{3050F6A0-98B5-11CF-BB82-00AA00BDCE0B}']
function SnapRect(const pIElement: IHTMLElement; var prcNew: tagRECT; eHandle: _ELEMENT_CORNER): HResult; stdcall;
end;
是否可以这样判断:
if @prcNew = nil then begin
Result := E_POINT;
Exit;
end;
苏丹-陈
2005-05-13
打赏
举报
回复
How much money? 还要钱啊,好啊,给答案公司给 :)
pingto
2005-05-13
打赏
举报
回复
How many money?
DELPHI
讲义
第一讲
delphi
基础【例】改变窗体的标题,颜色,尺寸
delphi
程序设计特点:可视化,开发方便【例】写代码,改变标题,颜色,尺寸
对象
成为处处用到的基本元素。
对象
含有属性和事件。
delphi
以pascal语法为基础。一、
delphi
是什么?
Delphi
是borland 公司研发的面向
对象
的,可视化的,快速的应用开发工具。 ◇
对象
是对相对独立
ZT:
DELPHI
講義
第一讲
delphi
基础 【例】改变窗体的标题,颜色,尺寸
delphi
程序设计特点:可视化,开发方便 【例】写代码,改变标题,颜色,尺寸
对象
成为处处用到的基本元素。
对象
含有属性和事件。
delphi
以pascal语法为基础。 一、
delphi
是什么?
Delphi
是borland 公司研发的面向
对象
的,可视化的,快速的应用开发工具。 ◇
对象
是对相对独立的客观存在或相对独
Delphi
基本语法与操作《转》
listbox从文件
中
读取列表的操作ListBox1.Items.LoadFromFile(ExtractFilePath(Application.ExeName)+'aaa.txt');ListBox1.Items.Add(
Ed
it1.Text);//添加了一个项目ListBox1.Items.SaveToFile(ExtractFilePath(Application.ExeNam...
Delphi
7简单DirectUI界面源码
界面效果 源码下载: http://download.csdn.net/detail/cometnet/5687875 unit CometSkin; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, She
Delphi
小技巧杂记
//获取任务栏尺寸 proc
ed
ure TForm1.Button1Click(Sender: TObject); var TaskList: HWnd; Border
ed
: TRect; begin TaskList := FindWindow(’Shell_TrayWnd’, nil); GetWindowRect(TaskList, Border
ed
); Label1.Cap
Windows SDK/API
1,184
社区成员
22,328
社区内容
发帖
与我相关
我的任务
Windows SDK/API
Delphi Windows SDK/API
复制链接
扫一扫
分享
社区描述
Delphi Windows SDK/API
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章