在SDK编程中,怎样判断出在文本框中单击的是右键?
// KillMessage.cpp : Defines the entry point for the application.
//
//在学习SDK编程,此程序作用是使截获的消息作废,具体的是创建了一个对话框,在
//上面画了一个文本框和一个命令按钮,单击命令按钮后,如果在文本框中单击MOUSE右键则不
//再弹出菜单.也就是屏蔽了右键消息。这个程序没有写玩。
#include "stdafx.h"
#include<windows.h>
#include<windef.h>
#include"resource.h"
BOOL CALLBACK DialogProc( HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam );
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
DialogBox( hInstance, LPCTSTR("Dialog"), NULL, DLGPROC(DialogProc) );
return 0;
}
BOOL CALLBACK DialogProc( HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam )
{
switch( uMsg )
{
case WM_COMMAND:
{
switch( LOWORD(wParam) )
{
case ButtonOk:
return (TRUE);
case IDCANCEL:
EndDialog( hwndDlg, TRUE );
return( TRUE );
//判断出了是文本框.
//问题是:怎样判断出在文本框中单击的是右键?MSDN上说用HIWORD(wParam)来判断消息编号,可是我在单步调式时发现不管是单击左键还是单击右键HIWORD(wParam)的值都是256,这是为什么?
//这个对话框我选择的是Edit Box这个控件,然后画在对话框上的.
是不是不应该选择这个控件。
case IDC_EDIT:
WORD h;
h = HIWORD(wParam);//h的值都是256
break;
}
break;
}
}
return (FALSE);
}