LRESULT CALLBACK WindowProc(
HWND hwnd, // handle to window
UINT uMsg, // message identifier
WPARAM wParam, // first message parameter
LPARAM lParam // second message parameter
)
{
int i=0,i2=0;
HDC hdc ;//设备句柄
PAINTSTRUCT ps ;//数据结构
RECT rect ;//数据结构
char buff[50];
switch (uMsg)
{
case WM_CREATE:
break;
case WM_PAINT:
break;
case WM_KEYDOWN:
SetRect(&rect,0,0,500,30);
InvalidateRect(hwnd,&rect,true);
hdc=BeginPaint(hwnd,&ps);
TextOut(hdc,0,0,buff,sprintf(buff,"%c 按钮被按下 KEYDOWN事件",LOWORD(wParam)));
EndPaint(hwnd,&ps);
break;
//为什么我改成 SetRect(&rect,0,30,500,30);
//且改TextOut(hdc,0,30,buff,sprintf(buff,"%c 按钮被按下 KEYDOWN事件",LOWORD(wParam)));
//就显示不出字符了呢 case WM_KEYUP:
SetRect(&rect,0,0,500,30);
InvalidateRect(hwnd,&rect,true);
hdc=BeginPaint(hwnd,&ps);
TextOut(hdc,0,0,buff,sprintf(buff,"%c 按钮被释放 KEYUP事件",LOWORD(wParam)));
EndPaint(hwnd,&ps);
break;
case WM_SYSKEYDOWN:
break;
case WM_SYSKEYUP:
break;
case WM_DESTROY:
PostQuitMessage (0) ;
return 0 ;
}
return DefWindowProc(hwnd,uMsg,wParam,lParam);
}
======================
改了以后没法显示了 怎么改才能显示这样的字符呢
我仅仅是想在下面一点显示
HWND hwnd, // handle to window
UINT uMsg, // message identifier
WPARAM wParam, // first message parameter
LPARAM lParam // second message parameter
)
{
int i=0,i2=0;
HDC hdc ;//设备句柄
PAINTSTRUCT ps ;//数据结构
RECT rect ;//数据结构
char buff[50];
switch (uMsg)
{
case WM_CREATE:
break;
case WM_PAINT:
break;
case WM_KEYDOWN:
SetRect(&rect,0,0,500,30);
InvalidateRect(hwnd,&rect,true);
hdc=BeginPaint(hwnd,&ps);
TextOut(hdc,0,0,buff,sprintf(buff,"%c 按钮被按下 KEYDOWN事件",LOWORD(wParam)));
EndPaint(hwnd,&ps);
break;
//为什么我改成 SetRect(&rect,0,30,500,30);
//且改TextOut(hdc,0,30,buff,sprintf(buff,"%c 按钮被按下 KEYDOWN事件",LOWORD(wParam)));
//就显示不出字符了呢 case WM_KEYUP:
SetRect(&rect,0,0,500,30);
InvalidateRect(hwnd,&rect,true);
hdc=BeginPaint(hwnd,&ps);
TextOut(hdc,0,0,buff,sprintf(buff,"%c 按钮被释放 KEYUP事件",LOWORD(wParam)));
EndPaint(hwnd,&ps);
break;
case WM_SYSKEYDOWN:
break;
case WM_SYSKEYUP:
break;
case WM_DESTROY:
PostQuitMessage (0) ;
return 0 ;
}
return DefWindowProc(hwnd,uMsg,wParam,lParam);
}
======================
改了以后没法显示了 怎么改才能显示这样的字符呢
我仅仅是想在下面一点显示
同样的只是换个坐标就可以显示呀
SetRect(&rect,0,0,500,30);能够显示
那又怎么样解释?
LPRECT lprc, // rectangle
int xLeft, // left side
int yTop, // top side
int xRight, // right side
int yBottom // bottom side
);top side = bottom side,这还是Rect吗?????
SetRect(&rect,0,30,500,30),这好象连线都不是呀,什么也没有呀,没有区域往哪显示呀。