안녕하세여 다시 질문입니다...
저 밑에 질문 드렸는데..
아는 답변이 와서..
제가 원하는건...
메모에서...
맨위의 줄에..
맨앞의 위치에서...
<- (LEFT) 키를 눌르면.
다른 곳으로 포커스를 이동하게 하고 싶거든요..
제가 아는 방법...(저 밑에 있는답변방법) 으로해보았었는데..
다른 곳으로 포커스가 가구 나서 다시 메모로 포커스가 돌아오더라구여 ^^;;;
제가 만든 함수가 돌고 그후에 메모 함수가 도는듯...
좀 도와주세요 ㅜ.ㅜ...
부탁 드립니다..꾸벅...
대충 이런것 같은데여...
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
Memo: TMemo;
procedure MemoKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
function GetCurrLine(Memo : TMemo) : Integer;
begin
Result := Memo.Perform(EM_LINEFROMCHAR,Memo.SelStart,0);
end;
function GetCurrPos(Memo : TMemo) : Integer;
begin
Result := Memo.SelStart - Memo.Perform(EM_LINEINDEX,GetCurrLine(Memo),0);
end;
procedure TForm1.MemoKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key = vk_left then
if (GetCurrLine(Memo) = 0 ) and (GetCurrPos(Memo)=0) then
edit1.Setfocus;
end;
end.
바보감자 wrote:
> 안녕하세여 다시 질문입니다...
> 저 밑에 질문 드렸는데..
> 아는 답변이 와서..
> 제가 원하는건...
> 메모에서...
> 맨위의 줄에..
> 맨앞의 위치에서...
> <- (LEFT) 키를 눌르면.
> 다른 곳으로 포커스를 이동하게 하고 싶거든요..
> 제가 아는 방법...(저 밑에 있는답변방법) 으로해보았었는데..
> 다른 곳으로 포커스가 가구 나서 다시 메모로 포커스가 돌아오더라구여 ^^;;;
> 제가 만든 함수가 돌고 그후에 메모 함수가 도는듯...
> 좀 도와주세요 ㅜ.ㅜ...
> 부탁 드립니다..꾸벅...
>
>