우선 최용일님또는 최재원님이 아니라서 죄송합니다.
그래도 도움이라도 될까봐서리....
우선 tab키로 이동하는 것을 엔터키로 바꿀수도 있습니다.
* Form의 KeyPreview속성을 True로 설정
* Form의 Button의 Default속성을 모두 False로 설정
다음 아래에 있는 것은
* dbgrid에서 쓰이는 거지만 보시면 되구요!
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Key=#13 then begin {엔터키가 눌렸다면}
Key=#0;
if (Sender is TDBGrid) then {DBGrid에서 Enter키가 눌린 것이라면}
TDBGrid(Sender).Perform(WM_KeyDown, VK_TAB, 0)
else
Perform(WM_NEXTDlgCtl, 0, 0);
end;
end;
또 한가지
그러니끼니 keypress 이벤트에서 이런식으로 처리하면은 되는데..
if key = vk_return then
begin
//여기서 처리.....
end;
그런데 여기서
vk_return 엔터
vk_up 윗 방향키
vk_down 아래 방향키
vk_left 왼쪽 방향키
vk_right 오른쪽 방향키
아시겠나요? 히~!
행복하셔요!
델초보 wrote:
> 용일님, 재원님 감사하구요..근데 제가 하고픈 코딩은
> 제목에서도 말했지만, 엔터기,화살표키를 누를때마다 에디터의 포커스가 다음 에디터 포커스로 옮겨지며, 옮겨진 에디터박스의 색깔은 파란색으로 되는 함수를 작성하는 것으로 폼에선 해당 에디터 관련 이벤트엔 단 한줄의 코딩도 하지 않는 것입니다. 예를들어 에디트박스가 30개정도 될 경우 이벤트를 사용하면 30개의 각각의 이벤트를 만들어야.....이것을 방지하기위한 간단한 코딩방법.....
>
>
>