24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 1496  |  回复: 13

缘不可解

新虫 (初入文坛)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★
dq20081935: 金币+7, ★★★很有帮助 2012-11-26 16:27:06
引用回帖:
7楼: Originally posted by dq20081935 at 2012-11-06 22:14:26
求mfc settimer()的用法,谢谢!

CWnd::SetTimer

UINT SetTimer(UINT nIDEvent, UINT nElapse, void (CALLBACK EXPORT*lpfnTimer) (HWND, UINT, UINT, DWORD) );

返回值:
如果函数成功,则返回新定时器的标识符。应用程序可以将这个值传递给KillTimer成员函数以销毁定时器。如果成功,则返回非零值;否则返回0。

参数: nIDEvent 指定了不为零的定时器标识符。  
nElapse 指定了定时值;以毫秒为单位。  
lpfnTimer 指定了应用程序提供的TimerProc回调函数的地址,该函数被用于处理WM_TIMER消息。如果这个参数为NULL,则WM_TIMER消息被放入应用程序的消息队列并由CWnd对象来处理。


说明:
这个函数设置一个系统定时器。指定了一个定时值,每当发生超时,则系统就向设置定时器的应用程序的消息队列发送一个WM_TIMER消息,或者将消息传递给应用程序定义的TimerProc回调函数。
lpfnTimer回调函数不需要被命名为TimerProc,但是它必须按照如下方式定义:
void CALLBACK EXPORT TimerProc(
   HWND hWnd,       // 调用SetTimer的CWnd的句柄
   UINT nMsg,         // WM_TIMER
   UINT nIDEvent      // 定时器标识
   DWORD dwTime    // 系统时间
   );
定时器是有限的全局资源;因此对于应用程序来说,检查SetTimer返回的值以确定定时器是否可用是很重要的。
坚持奋斗,学会感恩,懂得珍惜
11楼2012-11-26 13:07:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dq20081935

铜虫 (小有名气)

引用回帖:
11楼: Originally posted by 缘不可解 at 2012-11-26 13:07:50
CWnd::SetTimer

UINT SetTimer(UINT nIDEvent, UINT nElapse, void (CALLBACK EXPORT*lpfnTimer) (HWND, UINT, UINT, DWORD) );

返回值:
如果函数成功,则返回新定时器的标识符。应用程序可以将这个值传递 ...

谢谢,你的答复很详细,对我很有帮助!
12楼2012-11-26 16:26:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dq20081935

铜虫 (小有名气)

引用回帖:
11楼: Originally posted by 缘不可解 at 2012-11-26 13:07:50
CWnd::SetTimer

UINT SetTimer(UINT nIDEvent, UINT nElapse, void (CALLBACK EXPORT*lpfnTimer) (HWND, UINT, UINT, DWORD) );

返回值:
如果函数成功,则返回新定时器的标识符。应用程序可以将这个值传递 ...

对了,顺便在问个问题,关于定时器的,比如,每五秒钟使原来不可用的按钮变得可用,再过4秒钟该按钮又变回不可用。
这 个问题应该设置两个 SetTimer,
SetTimer(1,5000,NULL);
SetTimer(2,4000,NULL);
而且计时器2,是在1号计时器结束时开始计时的,程序能如下面写吗?我试过好象不对,你有什么办法吗?谢谢!
在void CMyDlg::OnTimer(UINT nIDEvent)
{
        // TODO: Add your message handler code here and/or call default
SetTimer(1,5000,NULL);

       
        switch(nIDEvent)
        {
        case 1:{m_button.EnableWindow (true);
                   SetTimer(2,4000,NULL);}
        case 2:m_button.EnableWindow (false);
        }
       
       
        CDialog::OnTimer(nIDEvent);
}
13楼2012-11-26 16:46:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

缘不可解

新虫 (初入文坛)

引用回帖:
13楼: Originally posted by dq20081935 at 2012-11-26 16:46:04
对了,顺便在问个问题,关于定时器的,比如,每五秒钟使原来不可用的按钮变得可用,再过4秒钟该按钮又变回不可用。
这 个问题应该设置两个 SetTimer,
SetTimer(1,5000,NULL);
SetTimer(2,4000,NULL) ...

你可以只用一个定时器,定义一个全局变量int m_num=0;BOOL m_flag=FALSE; 然后在

void CMyDlg::OnTimer(UINT nIDEvent)
{
    m_num++;   
    if(m_num%5==0&&m_flag==FALSE)
    {
             m_button.EnableWindow (true);
             m_flag=TRUE;
             m_num=m_num-5;
   }
  if(m_num%4==0&&m_flag==TRUE)
{
         m_button.EnableWindow (false);
         m_flag=FALSE;
         m_num=m_num-4;   
}
        CDialog::OnTimer(nIDEvent);
}
还有金币拿么
坚持奋斗,学会感恩,懂得珍惜
14楼2012-11-26 18:31:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 dq20081935 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 336求调剂,一志愿中科大 +6 墨彧 yuyu 2026-04-06 6/300 2026-04-06 23:19 by zzchen2000
[考研] 285求调剂 +12 哦呦呼o 2026-04-04 12/600 2026-04-06 23:04 by chenzhimin
[考研] 081700,311,求调剂 +16 冬十三 2026-04-04 17/850 2026-04-06 14:56 by 尚水阁主
[考研] 0855求调剂材料 +11 红桃灼灼 2026-04-04 12/600 2026-04-06 10:26 by 蓝云思雨
[考研] 377求调剂 +6 by.ovo 2026-04-05 6/300 2026-04-05 22:18 by dongzh2009
[考研] 一志愿同济大学323分(080500)求调剂 +8 yikeniu 2026-04-01 8/400 2026-04-05 18:15 by cql1109
[考研] 一志愿西北农林畜牧专硕336分求调剂 +3 5ourr 2026-04-03 3/150 2026-04-05 10:40 by JOKER0401
[考研] 290求调剂 +7 luoziheng 2026-04-04 7/350 2026-04-04 23:17 by lqwchd
[考研] 材料工程085601数二英一335求调剂 +6 双马尾痞老板2 2026-03-31 6/300 2026-04-04 22:29 by hemengdong
[考研] 求生物学调剂 +14 15172915737 2026-04-01 14/700 2026-04-04 20:13 by babysonlkd
[考研] 求调剂 +3 ffyyu 2026-04-02 3/150 2026-04-04 19:03 by 蓝云思雨
[考研] 325求调剂 +4 春风不借意 2026-04-04 4/200 2026-04-04 14:46 by 湘农储能材料
[考研] 一志愿沪985,326分求调剂 +3 刘墨墨 2026-04-03 3/150 2026-04-04 11:16 by 悲伤的芋头
[考研] 317分 一志愿江南大学 化学工程学硕 求调剂 +6 YinTai 2026-04-03 6/300 2026-04-03 22:30 by 无际的草原
[考研] 357求调剂 +13 1050389037 2026-04-03 13/650 2026-04-03 22:27 by 无际的草原
[考研] 321求调剂 一志愿 浙江工业大学生物医药 +5 嘿嘿HC 2026-04-01 6/300 2026-04-02 15:23 by sophie2180
[考研] 求调剂推荐 +3 南山南@ 2026-04-01 3/150 2026-04-02 12:09 by xiaoranmu
[考研] 一志愿北交大材料工程总分358 +3 cs0106 2026-04-02 5/250 2026-04-02 11:37 by olim
[考研] 材料调剂 +12 一样YWY 2026-04-01 12/600 2026-04-02 09:15 by olim
[考研] 085600 一志愿9 总分351 求调剂学校 +7 czhcz 2026-03-31 9/450 2026-04-01 19:24 by 无际的草原
信息提示
请填处理意见