|
김진수 님께 정말 감사 드립니다.
먼저 FormKeyUp에서는 Up, Down키는 가로체지기는 하는데 버턴의 포커서를 이동하고 난 다음에
가로체여지더군요. 제가 원하는 것이 아니라 김 진수님께서 말씀하신
C++Builder4 Bible 정우철씨가 지은 책의 "7장 이벤트" 에 내용이 나와 그대로 참조를 하여
제가 하고 싶은 처리를 하였습니다.
헤드부분에
private: // User declarations
void __fastcall AppOnMessage(TMsg &Msg, bool &Handled);
선언을 한 다음
메인 폼에 다음과 같이 추가하니 Up키와 Down키를 가로첼 수 있었습니다.
한가지 아쉬운 점은 제가 실력이 모자라 다른 폼에서까지 Up, Down키가 가로체여지는 것은
아직 해결하지는 못하였습니다.(제 프로그램에서는 일단 모든 폼에서 공통으로 Up, Down키
가 먹지 않아야 하기에 여기서 일단 접었습니다.)
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
Application->OnMessage = AppOnMessage;
}
void __fastcall TForm1::AppOnMessage(TMsg &Msg, bool &Handled)
{
if(Msg.message == WM_KEYDOWN)
{
if(Msg.wParam == VK_DOWN || Msg.wParam == VK_UP)
{
ShowMessage("Down Key Or Up Key Press"); //하고싶은 처리
Handled = true;
}
else Handled = false;
}
else Handled = false;
}
다시 한번 감사드립니다. 즐거운 하루 되십시오...
김진수 님이 쓰신 글 :
: 안녕하세요 김진수입니다...
:
: 책을 찾아보니 formkeydown formkeyup formkeypress 마다 가로 챌수 있는 가상키를 가지고
: 있습니다.. formkeydown에서 이를 가지고 있지 않은듯 합니다...
:
: 내용은 바이블4 정우철님이 쓰신 책 한 200P 정도에서 본듯합니다... 지금은 pc방이라
: 정확한 내용을 올릴수가 없네요 ^^ 그럼 필요하시다면 책을 가지고와 올려드리도록하죠
:
: formkeyup이나 formkeypress 이벤트로 옮겨 해보세여
:
: 그럼 좋은 하루 되세요 ^^
:
: 하희천 님이 쓰신 글 :
: : 폼에 두개의 버턴 Button1, Button2를 놓은 상태에서 폼의 KeyPreview속성을 true하고
: :
: : 다음과 같이 코딩하였지만 Up이나 Down키를 누를때 버턴의 포커스만 이동하고
: :
: : 메시지를 출력하지 않는데 어떻게 해야되는지 아시는 분 계시면 꼭 가르쳐 주십시오..
: :
: :
: : void __fastcall TForm1::FormKeyDown(TObject *Sender, WORD &Key,
: : TShiftState Shift)
: : {
: : if(Key == VK_DOWN) ShowMessage("Down Key Press");
: : }
: :
|