Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
visualBasic에서 SendKey와 같은기능을 찾습니다
tab event를 발생할 수 있게끼끔 하고 싶습니다.
vb에서는 sendkey +{tab}을 하면 되었는데..
delphi에는 어떤걸 써야할 지 모르겠습니다.
1
COMMENTS
구창민
•
1999.09.02 21:24
파이공주 께서 말씀하시기를...
> tab event를 발생할 수 있게끼끔 하고 싶습니다.
>
> vb에서는 sendkey +{tab}을 하면 되었는데..
> delphi에는 어떤걸 써야할 지 모르겠습니다.
파이공주님 안녕하세요?
콘트롤간의 이동에 대한 질문이라 생각하고 답변드립니다.
간단히 이동하려면 SetFocus; 메소드를 쓰면 되구요,
범용적으로 사용하려면 아래 소스를 Form의
OnKeyDown이벤트 핸들러에 때려 넣으시고,
각 콘트롤들의 OnKeyDown 이벤트 핸들러를 Form 의 OnKeyDown
이벤트 핸들러로 연결하세요.
아래 코드에 없는 콘트롤은 직접 기술하세요.
그러면 원하시는 기능이 자동으로 됩니다.
그럼.. 즐거운 프로그래밍 되시길~
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if ActiveControl is TDBMemo then exit;
if ActiveControl is TDBGrid then exit;
if Shift <> [] then Exit;
case Key of
VK_RETURN : begin
if ActiveControl is TDBComboBox then
if TDBComboBox(ActiveControl).DroppedDown then exit;
if ActiveControl is TDBLookupComboBox then
if TDBLookupComboBox(ActiveControl).ListVisible then exit;
SendMessage(TWinControl(Sender).Handle, WM_NEXTDLGCTL, 0, 0);
end;
VK_DOWN : begin
if ActiveControl is TDBComboBox then
if TDBComboBox(ActiveControl).DroppedDown then exit;
if ActiveControl is TDBLookupComboBox then
if TDBLookupComboBox(ActiveControl).ListVisible then exit;
SendMessage(TWinControl(Sender).Handle, WM_NEXTDLGCTL, 0, 0);
Key := 0;
end;
VK_UP : begin
if ActiveControl is TDBComboBox then
if TDBComboBox(ActiveControl).DroppedDown then exit;
if ActiveControl is TDBLookupComboBox then
if TDBLookupComboBox(ActiveControl).ListVisible then exit;
SendMessage(TWinControl(Sender).Handle, WM_NEXTDLGCTL, 1, 0);
Key := 0;
end;
end;
end;
0
0
삭제
수정
댓글
(NOTICE) You must be
logged in
to comment on this post.
서영환
•
1999.09.02 21:02
1
COMMENTS
/
0
LIKES
Active Form 이 종료될 때....
구창민
•
1999.09.02 21:35
서영환 께서 말씀하시기를... > 안녕하세요.. 델 초보 서영환입니다.. > > 지금 막히는 것이 있어서 고...
life
•
1999.09.02 20:24
1
COMMENTS
/
0
LIKES
컴파일 시 에러 발생
이정욱
•
1999.09.03 02:47
그 프로젝트에 포함된 유닛중에 다른버전의 델파이에서 컴파일된 DCU유닛이 있을경우 입니다. 그 유닛의 ...
정계훈
•
1999.09.02 20:18
1
COMMENTS
/
0
LIKES
DBGrid에서 MultiSelect를 할 때...
황선희
•
1999.09.27 20:41
정계훈 wrote: > 안녕하세요. > 제목 그대로 DBGrid에서 MultiSelect 할 때에 Ctrl키를 누른상태에서 > ...
이성호
1999.09.02 20:07
0
COMMENTS
/
0
LIKES
(질문)인스톨 쉴드로 여러개의 셋업파일 설치
주정길
1999.09.02 20:05
0
COMMENTS
/
0
LIKES
간절히 도움을 요청합니다.
윤정선
1999.09.02 19:38
0
COMMENTS
/
0
LIKES
cpu를 많이 잡아먹지 않고 효율적으로 움직이는 그림을 표현하려면..
파이공주
•
•
1999.09.02 19:01
1
COMMENTS
/
1
LIKES
visualBasic에서 SendKey와 같은기능을 찾습니다
tab event를 발생할 수 있게끼끔 하고 싶습니다. vb에서는 sendkey +{tab}을 하면 되었는데.. delphi에는 어떤걸 써야할 지 모르겠습니다.
구창민
•
1999.09.02 21:24
파이공주 께서 말씀하시기를... > tab event를 발생할 수 있게끼끔 하고 싶습니다. > > vb에서는 sendk...
최성대
1999.09.02 18:57
0
COMMENTS
/
0
LIKES
[질문-급] 퀵레포트 문제
신용탁
1999.09.02 18:38
0
COMMENTS
/
0
LIKES
Oracle과 BDE를 한꺼번에 install...
오춘배
1999.09.02 06:05
0
COMMENTS
/
0
LIKES
여러개의 JPG이미지로 애니매이션을 구현하는 방법을 알려주세요
궁굼이
•
1999.09.02 05:55
1
COMMENTS
/
0
LIKES
꼭좀 도와주세요
김태균
•
1999.09.02 18:47
델파이4.0 c/S 버젼에 데모 프로그램에 관련된 예제 프로그램이 있습니다. 그걸 참고 하시면 됩니다.
suezou
1999.09.02 04:43
0
COMMENTS
/
0
LIKES
델의 sql builder 사용방법...
최진석
1999.09.02 03:00
0
COMMENTS
/
0
LIKES
_qsqXX.db라는 임시파일좀 안생기게..
이성호
•
1999.09.02 02:32
1
COMMENTS
/
0
LIKES
실행파일(exe)과 해당 파일연결하기?
구창민
•
1999.09.02 02:57
이성호 께서 말씀하시기를... > 실행파일과 해당 파일을 연결하는 법을 알고 십습니다. > > scplayer.e...
황현동
1999.09.02 02:23
0
COMMENTS
/
0
LIKES
WIN API
정근수
•
1999.09.02 02:14
2
COMMENTS
/
0
LIKES
특정 디렉토리가 있는지 알수 있나요..
구창민
•
1999.09.02 02:50
정근수 께서 말씀하시기를... > 특정 디렉토리가 존재하는지 > > 알수 있는 방법이 있나요... > > ...
정근수
•
1999.09.02 04:45
창민님...~~~ 감사합니다... (*.-)
dukeom
•
1999.09.02 01:31
1
COMMENTS
/
0
LIKES
dbedit box에 여러개의 db field를 넣으려면?
댕이
•
1999.09.02 19:20
dukeom 께서 말씀하시기를... > 우편번호를 마스터로 놓고 주소를 자동으로 가져오는 프로그램입니다. > ...
황하성
1999.09.02 01:05
0
COMMENTS
/
0
LIKES
출력 이상...어디가 문제일까요? 도움 부탁..
권오경
1999.09.02 00:29
0
COMMENTS
/
0
LIKES
Excel 제어시 Cell 에 Color를 넣으려면..
문영철
•
1999.09.02 00:25
1
COMMENTS
/
0
LIKES
ActiveX control 이 다운이 안되네요
미친병아리
•
1999.09.07 05:12
문영철 께서 말씀하시기를... > active X를 이용한 web-Base 프로그램을 개발했습니다. > > client 에...
파이공주
1999/09/02 19:01
Views
1267
Likes
1
Comments
1
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
> tab event를 발생할 수 있게끼끔 하고 싶습니다.
>
> vb에서는 sendkey +{tab}을 하면 되었는데..
> delphi에는 어떤걸 써야할 지 모르겠습니다.
파이공주님 안녕하세요?
콘트롤간의 이동에 대한 질문이라 생각하고 답변드립니다.
간단히 이동하려면 SetFocus; 메소드를 쓰면 되구요,
범용적으로 사용하려면 아래 소스를 Form의
OnKeyDown이벤트 핸들러에 때려 넣으시고,
각 콘트롤들의 OnKeyDown 이벤트 핸들러를 Form 의 OnKeyDown
이벤트 핸들러로 연결하세요.
아래 코드에 없는 콘트롤은 직접 기술하세요.
그러면 원하시는 기능이 자동으로 됩니다.
그럼.. 즐거운 프로그래밍 되시길~
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if ActiveControl is TDBMemo then exit;
if ActiveControl is TDBGrid then exit;
if Shift <> [] then Exit;
case Key of
VK_RETURN : begin
if ActiveControl is TDBComboBox then
if TDBComboBox(ActiveControl).DroppedDown then exit;
if ActiveControl is TDBLookupComboBox then
if TDBLookupComboBox(ActiveControl).ListVisible then exit;
SendMessage(TWinControl(Sender).Handle, WM_NEXTDLGCTL, 0, 0);
end;
VK_DOWN : begin
if ActiveControl is TDBComboBox then
if TDBComboBox(ActiveControl).DroppedDown then exit;
if ActiveControl is TDBLookupComboBox then
if TDBLookupComboBox(ActiveControl).ListVisible then exit;
SendMessage(TWinControl(Sender).Handle, WM_NEXTDLGCTL, 0, 0);
Key := 0;
end;
VK_UP : begin
if ActiveControl is TDBComboBox then
if TDBComboBox(ActiveControl).DroppedDown then exit;
if ActiveControl is TDBLookupComboBox then
if TDBLookupComboBox(ActiveControl).ListVisible then exit;
SendMessage(TWinControl(Sender).Handle, WM_NEXTDLGCTL, 1, 0);
Key := 0;
end;
end;
end;