<div><br></div> <div> switch (iMsg) {</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case WM_CREATE:</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>line = 0;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>count = 0;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>//Process caret</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>CreateCaret(hwnd, NULL, 5, 15);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>ShowCaret(hwnd);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>return 0;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case WM_PAINT:</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>hdc = BeginPaint(hwnd, &ps);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>for(i=0; i<line; i++)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>TextOut(hdc, 0, i*20, str[i], lstrlen(str[i]));</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>//Show caret at the last line</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>GetTextExtentPoint(hdc, str[line],lstrlen(str[line]), &size);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>TextOut(hdc, 0,line*20, str[line],lstrlen(str[line]));</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>SetCaretPos(size.cx, line*20);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>EndPaint(hwnd, &ps);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break;</div> <div><br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case WM_CHAR:</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>switch(wParam){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case VK_BACK:</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if(count > 0)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>count--;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>else if(line > 0){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>line--;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>count = COL-1;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case VK_RETURN:</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> if(line == LOW-1){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> CallMsgBox(hwnd);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> }else{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> count = 0;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> line++;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> }</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>/*</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>가상키는 WM_KEYDOWN에서 구현 해야함</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>*/</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>default: //문자가 입력됨</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>//문자의 갯수가 10개이면 한줄을 띄움 </div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if(count == COL-1){ </div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if(line == 4){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>CallMsgBox(hwnd);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}else{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>count = 0;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>line++;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}else{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>str[line][count] = (TCHAR)wParam;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>count++; </div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> }</div> <div> </div> <div> str[line][count] = '\0';</div> <div> InvalidateRgn(hwnd, NULL, TRUE);</div> <div> return 0;</div> <div><br></div> <div> case WM_KEYDOWN :</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case VK_UP:</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if(line > 0)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>line++;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>hdc = GetDC(hwnd);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>GetTextExtentPoint(hdc,str[count],count,&size);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>ReleaseDC(hwnd, hdc);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>SetCaretPos(count,line);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break; </div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>else</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break;</div> <div><br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case VK_DOWN:</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if(line > 5)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>line--;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>hdc = GetDC(hwnd);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>GetTextExtentPoint(hdc,str[count],count,&size);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>ReleaseDC(hwnd, hdc);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>SetCaretPos(count,line);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break; </div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case VK_RIGHT:</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if(count < 4 )</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>count ++;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>hdc = GetDC(hwnd);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>GetTextExtentPoint(hdc,str[count],count,&size);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>ReleaseDC(hwnd, hdc);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>SetCaretPos(count,line);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break; </div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>/*else if(count =4)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{<span class="Apple-tab-span" style="white-space:pre;"> </span></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>hdc = GetDC(hwnd);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>GetTextExtentPoint(hdc,str[count],count,&size);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>ReleaseDC(hwnd, hdc);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>SetCaretPos(count,line);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break; </div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}*/</div> <div><br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case VK_LEFT:</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if(count > 0)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>count --;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>hdc = GetDC(hwnd);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>GetTextExtentPoint(hdc,str[count],count,&size);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>ReleaseDC(hwnd, hdc);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>SetCaretPos(count,line);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break; </div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>/*else if(count = 0)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>hdc = GetDC(hwnd);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>GetTextExtentPoint(hdc,str[count],count,&size);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>ReleaseDC(hwnd, hdc);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>SetCaretPos(count,line);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break; </div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}*/</div> <div><br></div> <div> </div> <div><br></div> <div>캐럿(커서)의 위치를 칸에 맞게 바꾸고 싶은데 잘 안되네요 ㅜㅜ 힌트나 도움 부탁드립니다.</div>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.