关于MFC定时器?

窗户 2016-07-08 12:20:48
BOOL CJSQDlg::OnInitDialog()
{
CDialogEx::OnInitDialog();

// 将“关于...”菜单项添加到系统菜单中。

// IDM_ABOUTBOX 必须在系统命令范围内。
ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX < 0xF000);

CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
BOOL bNameValid;
CString strAboutMenu;
bNameValid = strAboutMenu.LoadString(IDS_ABOUTBOX);
ASSERT(bNameValid);
if (!strAboutMenu.IsEmpty())
{
pSysMenu->AppendMenu(MF_SEPARATOR);
pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
}
}

// 设置此对话框的图标。当应用程序主窗口不是对话框时,框架将自动
// 执行此操作
SetIcon(m_hIcon, TRUE); // 设置大图标
SetIcon(m_hIcon, FALSE); // 设置小图标

// TODO: 在此添加额外的初始化代码
SetTimer(TIMER2,5000,0);
SetTimer(TIMER1,3000,0);

return TRUE; // 除非将焦点设置到控件,否则返回 TRUE
}


void CAboutDlg::OnTimer(UINT_PTR nIDEvent)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值

switch(nIDEvent)
{
case TIMER1:

str1="123";
GetDlgItem(IDC_JSQ1)->SetWindowText(str1);
break;
case TIMER2:
str2="456";
GetDlgItem(IDC_JSQ2)->SetWindowText(str2);
break;

}

CDialogEx::OnTimer(nIDEvent);
}
然而定时器并不启动把SETTIMER放在如下代码,点击按钮依然不启动
void CJSQDlg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
CString str3;
SetTimer(TIMER2,5000,0);
SetTimer(TIMER1,3000,0);
str3="asd";
GetDlgItem(IDC_JSQ1)->SetWindowText(str3);


}


或者家里有个计时器代码,可以使用第一个IMER1,但是TIMER2死活不启动,用断点发现CASE2启动程序直接就到了,根本不等计时,
谁有比较详细的多个计时的计时器案例来个谢谢了,
...全文
460 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
sichuanwww 2016-12-11
  • 打赏
  • 举报
回复
还是理解的问题
cdcjk 2016-12-10
  • 打赏
  • 举报
回复
把响应CJSQDlg的OnTimer
窗户 2016-07-08
  • 打赏
  • 举报
回复
我试试,关键我另外一个程序T1可以,T2不行为啥直接进去了就
zyjj_99 2016-07-08
  • 打赏
  • 举报
回复
引用 4 楼 mjdy123 的回复:
[quote=引用 3 楼 u010039362 的回复:] 是的,在这俩,类肯定是没问题,还有一个程序,第一个计时器能用,case timer2不好使,上来就进去了
你还没看清楚啊... CAboutDlg::OnTimer CJSQDlg::OnBnClickedButton1 你把定时器放到另一个类里去了啊....怎么还会效果呢~[/quote] 楼主,要关注红色字体
yi_yoo_ 2016-07-08
  • 打赏
  • 举报
回复
应该把响应CJSQDlg的OnTimer
puddingli 2016-07-08
  • 打赏
  • 举报
回复
引用 3 楼 u010039362 的回复:
是的,在这俩,类肯定是没问题,还有一个程序,第一个计时器能用,case timer2不好使,上来就进去了
你还没看清楚啊... CAboutDlg::OnTimer CJSQDlg::OnBnClickedButton1 你把定时器放到另一个类里去了啊....怎么还会效果呢~
窗户 2016-07-08
  • 打赏
  • 举报
回复
是的,在这俩,类肯定是没问题,还有一个程序,第一个计时器能用,case timer2不好使,上来就进去了
Eleven 2016-07-08
  • 打赏
  • 举报
回复
zgl7903 2016-07-08
  • 打赏
  • 举报
回复
CAboutDlg::OnTimer CJSQDlg::OnBnClickedButton1 在两个类里个玩个的?

15,980

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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