【WinCE】error C2065: “BN_DOUBLECLICKED”: 未声明的标识符

环境

系统:WinCE 6.0

编译器:VS2008

 

问题

给按钮添加BN_DOUBLECLICKED消息成功。

【WinCE】error C2065: “BN_DOUBLECLICKED”: 未声明的标识符_第1张图片

void CTestDlg::OnBnDoubleclickedButton1()
{
	// TODO: 在此添加控件通知处理程序代码
}

编译器时,报如下错误。

error C2065: “BN_DOUBLECLICKED”: 未声明的标识符

这,让我感到惊讶???

 

原因

This problem is due to a bug in the Windows CE operating system.

翻译:这个问题是由于Windows CE操作系统中的一个错误。

 

解决方法

使用BN_CLICKED来代替BN_DOUBLECLICKED,说白了,就是使用单击代替双击。

static BOOL s_bLastClicked = TRUE;
static DWORD s_dwTickCount = 0;

if (s_bLastClicked)
{
    DWORD dwTickCount = GetTickCount();
    if ((dwTickCount - s_dwTickCount) < 500) //Last click less than 500ms?
    {
        s_bLastClicked = FALSE; //Was double-clicked, don't test next time...

        //Assume a double click...
        //Do your double-click code here...
    }
    
    s_dwTickCount = dwTickCount;
}
else
{  
    s_bLastClicked = TRUE;
}

参考:https://www.infania.net/misc/kbarchive/kb/247/Q247323/index.html

你可能感兴趣的:(WinCE)