定时器的使用

ihavetried11times 2005-05-23 08:18:57
在VC中使用定时器本来应该没什么好问的;但我现在想把超时中断处理函数放在一个自己定义的类中作为其成员函数,编译时一直报错。不知哪位大侠能指点一二?
...全文
206 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
CPPLOVER_78 2005-05-23
  • 打赏
  • 举报
回复
1我看只有用全局变量来保存当前窗体的指针才能解决这个问题.

2取得MainFrame类的指针
MainFrame* pMain=(MainFrame*)AfxGetApp()->GetMainWnd();
ihavetried11times 2005-05-23
  • 打赏
  • 举报
回复
我现在想把超时处理函数做成全局函数了。那么我如何取得一个类的指针呢?(这个类已经在其他类中实例化了)

还有,如何取得MainFrame类的指针啊?
vcar 2005-05-23
  • 打赏
  • 举报
回复
超时中断处理函数如果是某个类的成员函数必须声明称静态的,否则编译通不过的。
非静态成员函数在编译的时候会自动加上一个this指针参数,回调提供的函数参数格式就不正确了。
koko1998 2005-05-23
  • 打赏
  • 举报
回复
定超时处理函数

没有这样的函数。
ihavetried11times 2005-05-23
  • 打赏
  • 举报
回复
to aganpro(阿甘):我的超时处理函数需要调用类中的其他成员函数,如果将该函数申明成静态的,这就不太方便了。有其他方法吗?
loki2k 2005-05-23
  • 打赏
  • 举报
回复
LRESULT CALLBACK myTimerProc(...)
aganpro 2005-05-23
  • 打赏
  • 举报
回复
把myTimerProc申明成静态的
static void CALLBACK myTimerProc(...)
ihavetried11times 2005-05-23
  • 打赏
  • 举报
回复
那怎么指定超时处理函数啊?
bohut 2005-05-23
  • 打赏
  • 举报
回复
SetTimer(hwnd,seq,5000,NULL);
ihavetried11times 2005-05-23
  • 打赏
  • 举报
回复
我在CGameRoom类里定义了定时器的超时处理函数如下:
void CALLBACK CGameRoom::myTimerProc(HWND hwnd, UINT message, UINT iTimerID, DWORD dwTime)
可是当我在该类的方法中启动定时器时却出现问题:
SetTimer(hwnd,seq,5000,myTimerProc);
编译提示出错:
F:\ GSServer\GameRoom.cpp(136) : error C2664: 'SetTimer' : cannot convert parameter 4 from 'void (struct HWND__ *,unsigned int,unsigned int,unsigned long)' to 'void (__stdcall *)(struct HWND__ *,unsigned int,unsigned int,unsigned long)'
None of the functions with this name in scope match the target type
shinubi_love 2005-05-23
  • 打赏
  • 举报
回复
对呀,报什么错?把代码贴出来看看
bohut 2005-05-23
  • 打赏
  • 举报
回复
报什么错?把代码贴出来看看

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧