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

菜鸟提问:如何在多线程中使用SetTimer()

楼主qqwwing(草莓猪)2004-05-03 20:42:56 在 VC/MFC / 基础类 提问

现在需要在线程处理函数中启动一个定时器,我一般用定时器的格式都是SetTimer(10,50,NULL),但在线程处理函数中这样加就不行,编译时会出错,提示信息如下:error   C2660:   'SetTimer'   :   function   does   not   take   3   parameters  
  但同样的写法我在别的地方如View类的消息处理函数中加就没错。是不是因为线程处理函数是全局函数的原因啊,我要在线程处理函数或全局函数中启动定时器的话应该怎样写SetTimer()数呢 问题点数:20、回复次数:2Top

1 楼Mackz(在相互)回复于 2004-05-03 23:18:55 得分 20

1.   在CWnd类的继承类中,CWnd::SetTimer()默认传递了一个参数:HWND,API中的::SetTimer()原型是这样的:  
  UINT_PTR   SetTimer(  
          HWND   hWnd,  
          UINT_PTR   nIDEvent,  
          UINT   uElapse,  
          TIMERPROC   lpTimerFunc  
  );  
  而线程函数或者是全局函数,或者是静态成员函数,没有继承CWnd的this指针,不能直接调用;  
  2.   既然用了线程,就没必要SetTimer了,直接Sleep就可以了。Top

2 楼new_guy(蓝调刀锋)(乘风破浪会有时,直挂云帆济沧海)回复于 2004-05-04 02:12:03 得分 0

markTop

相关问题

  • 才鸟提问一:关于用多线程访问TTreeView
  • 新手提问——多线程问题!
  • 多线程菜鸟问题
  • 新手提问——又是多线程问题,高手请进!
  • 多线程间数据共享,再次提问题。
  • 一只菜鸟学vc多线程!
  • 菜鸟的多线程简单问题~~~
  • 问一个COM与多线程的菜鸟问题
  • 问一个COM与多线程的菜鸟问题!1
  • 小鸟问:TC 能不能支持多线程 ??

关键词

  • 函数
  • 线程
  • settimer
  • 定时器
  • 线程处理
  • 全局
  • cwnd
  • uint
  • hwnd

得分解答快速导航

  • 帖主:qqwwing
  • Mackz

相关链接

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

广告也精彩

反馈

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