지금 api책보면서 응용프로그램 만들려고 하는데
윈도우창에 텍스트가 엔터치면 한번에 첫번째글만, 두번에 두번째글만, 세번에 세번째글만, 네번에 모두다, 다섯에 첫번째글만<--반복
일케 만들려고 하는데..
#include "stdafx.h"
#include <windows.h>
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
int WINAPI WinMain(HINSTANCE hInstance,
HINSTANCE hPrevlnstance,
LPSTR lpCmdLine,
int nShowCmd)
{
HWND hWnd;
MSG mSg;
char szTitle[]="hey";
char szClass[]="Class";
WNDCLASSEX WndEx;
WndEx.cbSize=sizeof(WndEx);
WndEx.style=NULL;
WndEx.lpfnWndProc=WndProc;
WndEx.cbClsExtra=0;
WndEx.cbWndExtra=0;
WndEx.hInstance=hInstance;
WndEx.hIcon=LoadIcon(NULL,"IDI_ICON");
WndEx.hCursor=LoadCursor(NULL,IDC_ARROW);
WndEx.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
WndEx.lpszMenuName=NULL;
WndEx.lpszClassName=szClass;
WndEx.hIconSm=LoadIcon(hInstance,"IDI_ICON");
RegisterClassEx(&WndEx);
hWnd=CreateWindowEx(NULL,
szClass,
szTitle,
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
CW_USEDEFAULT,
320,
240,
NULL,
NULL,
hInstance,
NULL);
ShowWindow(hWnd,nShowCmd);
UpdateWindow(hWnd);
while(TRUE)
{
if(PeekMessage(&mSg,NULL,0,0,PM_NOREMOVE))
{
if(!GetMessage(&mSg,NULL,0,0))
break;
TranslateMessage(&mSg);
DispatchMessage(&mSg);
}
}
return mSg.wParam;
}
LRESULT CALLBACK WndProc(HWND hWnd,
UINT uMsg,
WPARAM wParam,
LPARAM IParam)
{
HDC hDC;
char szText[]="빨강색의 텍스트";
char szText2[]="초록색의 텍스트";
char szText3[]="파랑색의 텍스트";
switch(uMsg)
{
case WM_KEYDOWN:
if(LOWORD(wParam)==VK_RETURN)
{
hDC=GetDC(hWnd);
SetTextColor(hDC,RGB(255,0,0));
TextOut(hDC,5,5,szText,lstrlen(szText));
SetTextColor(hDC,RGB(0,255,0));
TextOut(hDC,5,20,szText2,lstrlen(szText2));
SetTextColor(hDC,RGB(0,0,255));
TextOut(hDC,5,35,szText3,lstrlen(szText3));
}
if(LOWORD(wParam)==VK_DELETE)
{
InvalidateRect(hWnd,NULL,TRUE);
UpdateWindow(hWnd);
}
return FALSE;
case WM_DESTROY:
PostQuitMessage(0);
return FALSE;
}
return DefWindowProc(hWnd,uMsg,wParam,IParam);
}
내가 적은 코드는 엔터 한번에 몽땅 출력되서 저기 if문만 바꾸면 될거같은데 여러수 써봐도 자꾸 막혀..ㅜㅜ;
문제점이 뭔지 제시좀 부탁할게..ㅇㅇ;
ps.짤은 조공;약하면 말해 ㅋㅋ;
댓글 영역
획득법
① NFT 발행
작성한 게시물을 NFT로 발행하면 일주일 동안 사용할 수 있습니다. (최초 1회)
② NFT 구매
다른 이용자의 NFT를 구매하면 한 달 동안 사용할 수 있습니다. (구매 시마다 갱신)
사용법
디시콘에서지갑연결시 바로 사용 가능합니다.