如何让客户区中的字符移动,例如有字符‘A’在客户区中间,怎么样让它上下左右移动?

博诺那 2013-05-08 12:24:56
下面是我写的代码
#include<Windows.h>
#include "resource.h"
LRESULT CALLBACK MyWndProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam);


int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR IpCmdLine,int nCmdShow)
{
WNDCLASS wc;//定义窗口类
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hbrBackground = HBRUSH (COLOR_WINDOW+1);
wc.hCursor = NULL;
wc.hIcon = LoadIcon(hInstance,MAKEINTRESOURCE(IDI_ICON1));
wc.hInstance = hInstance;
wc.lpfnWndProc = MyWndProc;
wc.lpszClassName = TEXT("MyWin");
wc.lpszMenuName = MAKEINTRESOURCE(IDR_MENU1);
wc.style = CS_HREDRAW|CS_VREDRAW;

if(!RegisterClass(&wc))
{
return -1;
}

HWND hMainWnd = CreateWindow(TEXT("MyWin"),TEXT("sample"),WS_OVERLAPPEDWINDOW,0,0,CW_USEDEFAULT,0,NULL,NULL,hInstance,NULL);//创建主窗口

if(NULL != hMainWnd)
{
ShowWindow(hMainWnd,nCmdShow);
}

MSG Msg;

while(GetMessage(&Msg,NULL,0,0))
{
TranslateMessage (&Msg);
DispatchMessage(&Msg);
}


return 0;
}
HWND g_hBtton;
HINSTANCE g_hInst;

LRESULT CALLBACK MyWndProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam)
{
HDC hdc;
RECT rect;
PAINTSTRUCT ps;

int n = 5;
switch(uMsg)
{
case WM_CREATE:
g_hBtton = CreateWindow(TEXT("BUTTON"), TEXT("确定"), WS_CHILD | BS_DEFPUSHBUTTON | WS_VISIBLE,
20, 20,50,50, hWnd, (HMENU)123, g_hInst,NULL);
break;

case WM_COMMAND:

switch( HIWORD(wParam))
{
case BN_CLICKED:
MessageBox(NULL,TEXT("yes"),TEXT("GQ"),MB_YESNO);
break;
}
break;

case WM_KEYDOWN://此处不知道该怎么移动
switch(wParam)
{
case VK_LEFT:
n+=1;

}
break;
case WM_PAINT:
hdc = BeginPaint(hWnd,&ps);
GetClientRect(hWnd,&rect);
TextOut(hdc,rect.right/2,rect.bottom/2,TEXT("A"),1);
//DrawText(hdc,TEXT("hello"),-1,&rect,DT_SINGLELINE| DT_CENTER|DT_VCENTER);
EndPaint(hWnd,&ps);
break;

case WM_DESTROY:
PostQuitMessage(0);
break;
default :
return DefWindowProc(hWnd,uMsg,wParam,lParam);
}
//InvalidateRect(hWnd,NULL,TRUE);

return DefWindowProc(hWnd,uMsg,wParam,lParam);
}
...全文
82 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
博诺那 2013-05-18
  • 打赏
  • 举报
回复
自己解决了,没有人回复。。
青松2 2013-05-09
  • 打赏
  • 举报
回复
帮顶

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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