社区
ATL
帖子详情
关于com中变量保存的问题。
schollc
2007-06-24 02:14:42
我页面触发了ondrop事件,当某些html格式的内容拖到div中,我把这些html的原始url保存在一个public变量中,然后我再响应一个ondbclick事件,发现无论如何都取不到这个变量了。那com中如何保存这个值呢?
很奇怪的是,我还定义了一个IElementBehaviorSite智能指针,每次页面初始化的时候,保存当前页面。如果我反复的触发ondrop事件,这个指针都可以用,但是在ondbclick中,这个指针就不能用了,为什么啊?
...全文
228
5
打赏
收藏
关于com中变量保存的问题。
我页面触发了ondrop事件,当某些html格式的内容拖到div中,我把这些html的原始url保存在一个public变量中,然后我再响应一个ondbclick事件,发现无论如何都取不到这个变量了。那com中如何保存这个值呢? 很奇怪的是,我还定义了一个IElementBehaviorSite智能指针,每次页面初始化的时候,保存当前页面。如果我反复的触发ondrop事件,这个指针都可以用,但是在ondbclick中,这个指针就不能用了,为什么啊?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
schollc
2007-06-25
打赏
举报
回复
已经解决了,我改成了定义char mSourceURL[256]之后,构造函数中memset(mSource,0,256)了一把,就OK了,恐怕是我没有指定内存的具体位置,所以不能传值。
不过,不知道char*怎么初始化。等待后面的人接问题了。
2天没人回,我就结贴了。
谢谢上面2位。
schollc
2007-06-25
打赏
举报
回复
TO:tufaqing 没有new。
TO:jiangsheng
1 应该是一个所属对象。
2 在behavior类中先把页面的某个element与eventSink绑定。
hr = AtlAdvise( m_spElem, m_pEventSink, DIID_HTMLElementEvents, &m_dwCookie );
然后在eventsink类的invoke中响应事件。
CEventSink::Invoke(
DISPID dispidMember,
REFIID riid,
LCID lcid,
WORD wFlags,
DISPPARAMS* pdispparams,
VARIANT* pvarResult,
EXCEPINFO* pexcepinfo,
UINT* puArgErr)
{
switch ( dispidMember )
{
case DISPID_HTMLELEMENTEVENTS_ONDROP:
OnDrop();
break;
...
onDrop函数中的方法是写在behavior中的。
当然之前作了个factory类,用来创建behavior类的指针。
具体的框架,我是仿照http://msdn.microsoft.com/archive/default.asp?url=/archive/en-us/samples/internet/browser/binarybehavior/default.asp这个实现的。
蒋晟
2007-06-24
打赏
举报
回复
1 你确定你的public变量所属对象是同一个?
2 你的描述有太多不确定性,把你如何响应事件,如何保存当前页面说一下
tufaqing
2007-06-24
打赏
举报
回复
char* mSourceURL new空间了没有,LZ不会是直接mSourceURL = "aaa"吧?
schollc
2007-06-24
打赏
举报
回复
我刚才又试了一下,在.h中定义了一个UINT变量,在第一次drop的时候给一个值,在dbclick的时候可以得到阿。
另外一个试验,还是.h中定义的那个char* mSourceURL,在drop的时候赋一个“aaa”,在dbclick的时候同样可以得到。
但是为什么当mSourceURL="www.csdn.net/....."什么的时候就不行了么?在drop的时候,可以看到mSourceURL的值是正确的,到了dbclick就没有了。太奇怪了,大家帮帮忙啊,周2前就要完成的
03Go语言实战之
变量
与常量
课程介绍了go语言当
中
的
变量
和常量使用方法,包含了
变量
的声明方式、简短
变量
声明、
变量
的作用域、指针、按值传递和按址传递的区别、常量介绍
Android
中
保存
全局
变量
Application
保存
全局
变量
,非四大组件也可以访问,实现单例模式
使用vueX
保存
全局
变量
及全局
变量
的更改
使用vueX
保存
全局
变量
及全局
变量
的更改
matlab
保存
数据用什么指令_matlab
中
如何保留指定的
变量
的数据
标签:在使用matlab时,通常要将计算的结果
保存
到mat文件
中
。使用的命令是: save filename但是用上述命令
保存
的时候,会将计算过程
中
的其他
变量
一起
保存
了。这
中
粗糙的
保存
有以下缺点:(1)不需要的数据信息
保存
到mat文件
中
,导致mat文件过大;(2)下次load这个mat文件时,会显示出其他不需要的数据,占用系统内存。因此,在
保存
数据时,应
保存
有用的数据
变量
。处理方式:(1)先删除变...
Matlab将
变量
保存
到txt文件
filename:文件名(含有路径) eg:filename = 'H:\WorkSpaces\python\medicine\data\matlab\outputdata10.txt'; flag_matrix:待
保存
的
变量
名 -ascii:
保存
的格式 save(filename,'flag_matrix','-ascii') 但是这样的结果,不是我想要的!!! save(fil...
ATL
3,245
社区成员
48,537
社区内容
发帖
与我相关
我的任务
ATL
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
复制链接
扫一扫
分享
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章