CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  ATL/ActiveX/COM

如果在一个网页中放置多个AxtiveX控件(一样的), 只有第一个控件中的定时器, 被触发, 为什么?

楼主liyuefu()2006-03-03 18:40:56 在 VC/MFC / ATL/ActiveX/COM 提问

我有个ActiveX控件,   里面定义了定时器.  
   
  我在网页里面放置了多个:  
   
   
  <HTML>  
   
  <OBJECT   ID=ntgraph   WIDTH="50%"   HEIGHT="50%"   CLASSID="CLSID:C9FE01C2-2746-479B-96AB-E0BE9931B018">  
  </OBJECT>  
   
  <script>  
  ntgraph.MyRefresh()  
  </script>  
   
   
  <OBJECT   ID=ntgraph2   WIDTH="50%"   HEIGHT="50%"   CLASSID="CLSID:C9FE01C2-2746-479B-96AB-E0BE9931B018">  
  </OBJECT>  
   
  <script>  
   
  ntgraph2.MyRefresh()  
  </script>  
   
  </HTML>  
   
   
  但是只有第一个控件被触发了,   第二个,   ntgraph2的OnTimer没有被触发.  
  不知道为什么. 问题点数:20、回复次数:3Top

1 楼jiangsheng(蒋晟.Net[MVP])回复于 2006-03-04 09:46:29 得分 0

容器会把消息转发到激活的控件,但是一次只能激活一个控件Top

2 楼liyuefu()回复于 2006-03-06 09:09:58 得分 0

我要每个控件都能触发OnTimer事件,应该怎么做  
   
  多谢!Top

3 楼dj0379(小猪)回复于 2006-03-08 15:05:49 得分 0

如果控件是自己写的,您应该有两种方法解决这个问题:  
  第一种,不要使用OnTimer事件方式,您可以采用单独的线程函数加上“Sleep(毫秒值);”的方法代替,这样可以避免消息机制对您定时时间的影响。  
  第二种,您仍然用OnTimer事件,不过这样您可能要在控件中另外编写一个函数,负责COM引用计数的查询和相应的消息转发,这样可以通过激活的控件转发定时器消息给其他同类控件,不过这种方法不一定可行。Top

相关问题

  • VBA里面有定时器控件吗?
  • 请问高手:ActiveX控件里头怎么样设置定时器?
  • api(定时器)??
  • 再开贴提问:为什么我的Remoting服务定时器不触发 ? 大家看看阿 。
  • 定时器的启动问题(比较怪异,这种方式就是触发不了)
  • 哪位大虾帮帮小弟啊 在一个MFC控件中怎么使用定时器啊
  • 定时器的触发时间为5ms,而触发后执行的操作的时间远>5ms,而且timer.enable=true.会出现什么样的后果?
  • 怎么能让做的activex控件象VB中的定时器控件一样, 不出现在窗体编辑器里, 而是出现在组件列里?
  • 关于定时器
  • 定时器问题!!!

关键词

  • 控件
  • 消息
  • 定时器
  • 触发
  • 转发
  • 激活
  • ontimer事件
  • 方法

得分解答快速导航

  • 帖主:liyuefu

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo