Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
TMemo에서 Key Cursor가 있는 행과 컬럼을 어떻게 알아내죠 ?
TMemo에서 KeyPressed 이벤트가 발생했을때 그때 행과 컬럼을 뿌려줄려고 합니다.
어떻게 해야 하죠 ?
한수 부탁 합니다.
1
COMMENTS
Mr.Q
•
2000.11.16 06:47
전체소스입니다.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ComCtrls;
type
TForm1 = class(TForm)
Memo1: TMemo;
StatusBar1: TStatusBar;
Button1: TButton;
Button2: TButton;
Button3: TButton;
procedure FormCreate(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Memo1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Memo1Click(Sender: TObject);
procedure Memo1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
{ Private declarations }
public
{ Public declarations }
procedure GetMemoLine(memo:TCustomMemo);
procedure SetMemoLine(Memo:TCustomMemo; MemoLine, MemoCol:integer);
end;
var
Form1: TForm1;
MemoLine, MemoCol, CharseBeforeLine:integer;
implementation
{$R *.DFM}
procedure TForm1.GetMemoLine(memo:TCustomMemo);
var
LineNum:LongInt;
//CharseBeforeLine:LongInt;
begin
LineNum:=SendMessage(Memo.Handle, EM_LINEFROMCHAR, Memo.SelStart, 0);
CharseBeforeLine:=SendMessage(Memo.Handle, EM_LINEINDEX, LineNum, 0);
MemoLine:=LineNum+1;
MemoCol:=Memo.SelStart - CharseBeforeLine + 1;
end;
procedure TForm1.SetMemoLine(Memo:TCustomMemo; MemoLine, MemoCol:integer);
begin
Memo.SelStart:=SendMessage(Memo.Handle, EM_LINEINDEX, MemoLine-1, 0)+MemoCol-1
;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
GetMemoLine(Memo1);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
ShowMessage(IntToStr(Memo1.SelStart));
Memo1.SetFocus;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
GetMemoLine(Memo1);
Showmessage(IntToStr(CharseBeforeLine));
Memo1.SetFocus;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
GetMemoLine(Memo1);
SetMemoLine(Memo1, MemoLine, MemoCol);
Memo1.SetFocus;
end;
procedure TForm1.Memo1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
GetMemoLine(Memo1);
StatusBar1.SimpleText:='Line: '+IntToStr(MemoLine)+ ' ' +
'Col: ' +IntToStr(MemoCol);
end;
procedure TForm1.Memo1Click(Sender: TObject);
begin
GetMemoLine(Memo1);
StatusBar1.SimpleText:='Line: '+IntToStr(MemoLine)+ ' ' +
'Col: ' +IntToStr(MemoCol);
end;
procedure TForm1.Memo1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
GetMemoLine(Memo1);
StatusBar1.SimpleText:='Line: '+IntToStr(MemoLine)+ ' ' +
'Col: ' +IntToStr(MemoCol);
end;
end.
원영준 wrote:
> TMemo에서 KeyPressed 이벤트가 발생했을때 그때 행과 컬럼을 뿌려줄려고 합니다.
>
>
> 어떻게 해야 하죠 ?
>
> 한수 부탁 합니다.
0
0
삭제
수정
댓글
(NOTICE) You must be
logged in
to comment on this post.
김인수
2000.11.16 06:46
0
COMMENTS
/
0
LIKES
DBGrid에서 입/출고 구분해서 폰트색 지정할때
우소균
•
2000.11.16 06:38
2
COMMENTS
/
0
LIKES
비주엘베이직에서 프린트작업이 가능한가요?
방문현
•
2000.11.16 07:06
우소균 wrote: > 증권업무와 관련된 전표프로그램을 만들려고 합니다. > DB에 저장된 자료를 뽑아내서 원...
유재홍
•
2000.11.16 06:59
우소균 wrote: > 증권업무와 관련된 전표프로그램을 만들려고 합니다. > DB에 저장된 자료를 뽑아내서 원...
안젤726
2000.11.16 06:15
0
COMMENTS
/
0
LIKES
ActiveX에 동일한 메소드가 있을 경우 어케 사용하나요 ?
김도완
•
2000.11.16 06:02
9
COMMENTS
/
0
LIKES
SQL 에서 Params 사용시 에러!!!!!!!
천석우
•
2000.11.16 21:50
Mr.Q
•
2000.11.16 06:21
김도완
•
2000.11.16 07:35
Mr.Q
•
2000.11.16 08:15
김일영
•
2000.11.16 07:46
김도완
•
2000.11.16 08:05
방경주
•
2000.11.16 08:12
• • •
호야
•
2000.11.16 05:57
1
COMMENTS
/
0
LIKES
실행파일명으로 디렉토리찾기
Mr.Q
•
2000.11.16 06:28
호야 wrote: > 실행파일명은 TelephoNes.exe이거든요. > 실행파일명만으로 어느디렉토리밑에 있는지를 알...
이몽돌
2000.11.16 05:56
0
COMMENTS
/
0
LIKES
TADOTABLE에 관하여....
방기남
2000.11.16 07:56
0
COMMENTS
/
0
LIKES
3-Tier쪽 자료나 사이트 소개 부탁합니다.
김용희
•
2000.11.16 05:11
2
COMMENTS
/
0
LIKES
[Q]임의날자 구간에의의 시간대별(0900-1100) 자료 질의방법
coolling
•
2000.11.17 04:22
이렇게 하면 되지 않나요..?? with Query1 do begin Close; SQL.Clear; SQL.Add( 'SELEC...
김용희
•
2000.11.17 07:00
> 김용희 wrote: 알려주신 요령대로 잘 되었습니다. 감사 드립니다. 한가지 더 알려주셔요 ...
heimdal
•
2000.11.16 05:10
2
COMMENTS
/
0
LIKES
화면위에 항상 떠있는 프로그램
Mr.Q
•
2000.11.16 06:35
heimdal wrote: > 안녕하세요..헤임달입니다.. > 어떤 메신저 프로그램에서요..옵션에 "항상위"라는 것을...
김상호
•
2000.11.16 09:21
이와 같이 하면 항상 위에 떠 있지 않습니다. 만약 다른 프로그램을 실행하면 아래로 숨어 버리지요 .. ...
kokoo
2000.11.16 05:04
0
COMMENTS
/
0
LIKES
델파이에서 엑셀의 worksheet 이동시키는 방법좀 알려 주세요.
강경희
•
2000.11.16 05:03
1
COMMENTS
/
0
LIKES
TPagecontrol안에 Listview안에 image.. 이미지가 뒤로 가서 안
흐르는산
•
2000.11.16 09:04
강경희 wrote: > 징징.... > > 어떻게 해야하나요.... 페이지 컨트롤안에 리스트뷰와 image1 이 있는...
필승이
2000.11.16 04:42
0
COMMENTS
/
0
LIKES
라인(선)을 넣을수있는 메모컴포넌트 혹시 없나요?
원영준
•
•
2000.11.16 04:37
1
COMMENTS
/
1
LIKES
TMemo에서 Key Cursor가 있는 행과 컬럼을 어떻게 알아내죠 ?
TMemo에서 KeyPressed 이벤트가 발생했을때 그때 행과 컬럼을 뿌려줄려고 합니다. 어떻게 해야 하죠 ? 한수 부탁 합니다.
Mr.Q
•
2000.11.16 06:47
전체소스입니다. unit Unit1; interface uses Windows, Messages, SysUtils, Classes, Gra...
godurum
2000.11.16 03:38
0
COMMENTS
/
0
LIKES
invalid blob handle in record buffer에러가 납니다.
초보중 초보
•
2000.11.16 02:38
3
COMMENTS
/
0
LIKES
저장할때 숫자만...저장
이광형
•
2000.11.16 04:02
루프돌려서 숫자만 추출하면 어떨까요...^^ procedure TForm1.Button1Click(Sender: TObject); var ...
임형호
•
2000.11.16 02:58
MaskEdit를 사용하세요. ^^; 뭐 간단히 해결될것 같네여.... 초보중 초보 wrote: > 에디트에서 입력 받...
초보중 초보
•
2000.11.16 03:19
임형호 wrote: > MaskEdit를 사용하세요. ^^; 뭐 간단히 해결될것 같네여.... 저도 그러면 좋겠는데요....
양수정
•
2000.11.16 02:36
1
COMMENTS
/
0
LIKES
CheckListBox에서 특정아이템은 체크를 할 수 없게 하려면??
Mr.Q
•
2000.11.16 07:10
양수정 wrote: > 안녕하셔요..... > > 제목 그대로 입니다.... > > 예를들면 > > checkListb...
투덜이
•
2000.11.16 02:22
1
COMMENTS
/
0
LIKES
dblookupcombobox의 선택된 값이 보이지 않슴다.
오병주
•
2000.11.16 03:07
투덜이 wrote: > 간만에 왔어요. > 그간 띵자띵자 놀다가...허겁지겁 뭔가를 하려니..감감합니다. > >...
어린왕자
2000.11.18 02:50
0
COMMENTS
/
0
LIKES
[델파이외 질문]Html Help Workshop 사용법..Html파일을 포함시키기-.-
아기코알라
•
2000.11.16 01:33
1
COMMENTS
/
0
LIKES
QuickReport관련
아이언
•
2000.11.16 01:58
첫번째 A3 미리 보기 할때.. A4까지 밖에 안보이는 문제점은 프린터 용지 설정이 A4이기 때문에 미리보기...
이분희
•
2000.11.15 23:50
1
COMMENTS
/
0
LIKES
리치에디트에서폰트한글자만폰트색깔바꾸는 방법
이채성
•
2000.11.16 03:11
RichEdit의 SelAttributes 프로퍼티를 사용해 보시는 게 어떨까 하는데요.. 다음은 제가 만든 샘플입니다....
원영준
2000/11/16 04:37
Views
812
Likes
1
Comments
1
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ComCtrls;
type
TForm1 = class(TForm)
Memo1: TMemo;
StatusBar1: TStatusBar;
Button1: TButton;
Button2: TButton;
Button3: TButton;
procedure FormCreate(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Memo1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Memo1Click(Sender: TObject);
procedure Memo1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
{ Private declarations }
public
{ Public declarations }
procedure GetMemoLine(memo:TCustomMemo);
procedure SetMemoLine(Memo:TCustomMemo; MemoLine, MemoCol:integer);
end;
var
Form1: TForm1;
MemoLine, MemoCol, CharseBeforeLine:integer;
implementation
{$R *.DFM}
procedure TForm1.GetMemoLine(memo:TCustomMemo);
var
LineNum:LongInt;
//CharseBeforeLine:LongInt;
begin
LineNum:=SendMessage(Memo.Handle, EM_LINEFROMCHAR, Memo.SelStart, 0);
CharseBeforeLine:=SendMessage(Memo.Handle, EM_LINEINDEX, LineNum, 0);
MemoLine:=LineNum+1;
MemoCol:=Memo.SelStart - CharseBeforeLine + 1;
end;
procedure TForm1.SetMemoLine(Memo:TCustomMemo; MemoLine, MemoCol:integer);
begin
Memo.SelStart:=SendMessage(Memo.Handle, EM_LINEINDEX, MemoLine-1, 0)+MemoCol-1
;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
GetMemoLine(Memo1);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
ShowMessage(IntToStr(Memo1.SelStart));
Memo1.SetFocus;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
GetMemoLine(Memo1);
Showmessage(IntToStr(CharseBeforeLine));
Memo1.SetFocus;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
GetMemoLine(Memo1);
SetMemoLine(Memo1, MemoLine, MemoCol);
Memo1.SetFocus;
end;
procedure TForm1.Memo1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
GetMemoLine(Memo1);
StatusBar1.SimpleText:='Line: '+IntToStr(MemoLine)+ ' ' +
'Col: ' +IntToStr(MemoCol);
end;
procedure TForm1.Memo1Click(Sender: TObject);
begin
GetMemoLine(Memo1);
StatusBar1.SimpleText:='Line: '+IntToStr(MemoLine)+ ' ' +
'Col: ' +IntToStr(MemoCol);
end;
procedure TForm1.Memo1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
GetMemoLine(Memo1);
StatusBar1.SimpleText:='Line: '+IntToStr(MemoLine)+ ' ' +
'Col: ' +IntToStr(MemoCol);
end;
end.
원영준 wrote:
> TMemo에서 KeyPressed 이벤트가 발생했을때 그때 행과 컬럼을 뿌려줄려고 합니다.
>
>
> 어떻게 해야 하죠 ?
>
> 한수 부탁 합니다.