MFC定时器的小疑点
MFC定时器的小问题
我用以下语句屏蔽了剪切板:
OpenClipboard();
EmptyClipboard();
但是目前我的问题是计时器跑不起来,请大神帮忙。
我在以上代码实现了设定计时器,
这段代码是ontimer的代码,请大神帮助解决,为什么每次不进入333这个部分?
还有一个问题就是如果如果我设定了定时器,剪切板操作还能不能恢复了?
附上屏蔽复制键的操作:
------解决思路----------------------
BEGIN_MESSAGE_MAP(CSmartPointerDlg, CDialog)
//{{AFX_MSG_MAP(CSmartPointerDlg)
ON_WM_TIMER()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
添加了吗?
------解决思路----------------------
下断跟踪看看
------解决思路----------------------
BOOL CEmptyClipboardDlg::OnInitDialog()
{
...
// TODO: 在此添加额外的初始化代码
SetTimer(2, 100, NULL);
return TRUE; // 除非将焦点设置到控件,否则返回 TRUE
}
void CEmptyClipboardDlg::OnTimer(UINT nIDEvent)
{
if (nIDEvent == 1)
{
MessageBox(_T("333333333333333"));
Empty();
}
else
{
MessageBox(_T("444444"));
}
CDialog::OnTimer(nIDEvent);
}
CEmptyClipboardDlg类定义中需要DECLARE_MESSAGE_MAP()
CEmptyClipboardDlg类实现中需要
BEGIN_MESSAGE_MAP(CSmartPointerDlg, CDialog)
//{{AFX_MSG_MAP(CSmartPointerDlg)
ON_WM_TIMER()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
------解决思路----------------------
SetTimer(2, 100, NULL);
你的定时器ID是2. 你处理的时候用的1
我用以下语句屏蔽了剪切板:
OpenClipboard();
EmptyClipboard();
但是目前我的问题是计时器跑不起来,请大神帮忙。
BOOL CEmptyClipboardDlg::OnInitDialog()
{
...
// TODO: 在此添加额外的初始化代码
SetTimer(2, 100, NULL);
return TRUE; // 除非将焦点设置到控件,否则返回 TRUE
}
我在以上代码实现了设定计时器,
void CEmptyClipboardDlg::OnTimer(UINT nIDEvent)
{
if (nIDEvent == 1)
{
MessageBox(_T("333333333333333"));
Empty();
}
else
{
MessageBox(_T("444444"));
}
CDialog::OnTimer(nIDEvent);
}
这段代码是ontimer的代码,请大神帮助解决,为什么每次不进入333这个部分?
还有一个问题就是如果如果我设定了定时器,剪切板操作还能不能恢复了?
附上屏蔽复制键的操作:
void CEmptyClipboardDlg::Empty()
{
OpenClipboard();
EmptyClipboard();
MessageBox(_T("Beep"));
}
------解决思路----------------------
BEGIN_MESSAGE_MAP(CSmartPointerDlg, CDialog)
//{{AFX_MSG_MAP(CSmartPointerDlg)
ON_WM_TIMER()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
添加了吗?
------解决思路----------------------
下断跟踪看看
------解决思路----------------------
BOOL CEmptyClipboardDlg::OnInitDialog()
{
...
// TODO: 在此添加额外的初始化代码
SetTimer(2, 100, NULL);
return TRUE; // 除非将焦点设置到控件,否则返回 TRUE
}
void CEmptyClipboardDlg::OnTimer(UINT nIDEvent)
{
if (nIDEvent == 1)
{
MessageBox(_T("333333333333333"));
Empty();
}
else
{
MessageBox(_T("444444"));
}
CDialog::OnTimer(nIDEvent);
}
CEmptyClipboardDlg类定义中需要DECLARE_MESSAGE_MAP()
CEmptyClipboardDlg类实现中需要
BEGIN_MESSAGE_MAP(CSmartPointerDlg, CDialog)
//{{AFX_MSG_MAP(CSmartPointerDlg)
ON_WM_TIMER()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
------解决思路----------------------
SetTimer(2, 100, NULL);
你的定时器ID是2. 你处理的时候用的1