Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
TMemo에 관한질문입니다.
화면에서 메모를 사용중에
1. 메모에 입력된 글자가 총 얼마의 바이트를 넘게 되면 더이상 입력되지 않케 하는 방법
2. 그리고 한 라인상 몇바이트 이상 넘길시에 다음라인으로 넘어가는 방법을
몰라서 몇일동안 해매고 있습니다.--;
예전 Q&A를 찾아봐도 해답을 잘 못찾겠네요..델파이 시작한지 얼마안된 초보라..-_-; 간단한 예를 들어주시면 더욱 감사드리구요,
답변부탁드립니다.
1
COMMENTS
타락천사
•
2002.10.22 01:58
안녕하세여. 타락임다..
우선 첫번째 방법은
procedure TFrmMain.Memo1KeyPress(Sender: TObject; var Key: Char);
begin
if Length(Memo1.Text) > 20 then
Key := #0;
end;
와 같이 하면 됩니다. 코드를 보면 아시겠지만, 텍스트 사이즈가 20이 넘으면 아무 키도 안먹습니다. backspare 등의 다른 키를 먹게 하려면 Key 값을 검사하면 되겠죠..
두번째 방법은... 졸라 어렵습니다..ㅡㅡ;;
먼저 현제 커서가 위치한 Row 를 얻어야 합니다.
Row := Memo1.Perform(EM_LINEFROMCHAR, -1, 0);
으로 Row 를 얻습니다.
그리고 위와 같이 KeyPress 이벤트에서 Length(Memo1.Lines[Row]) 값을 얻어서 일정 바이트 이상 넘으면 Memo1.Lines.Add() 하시면 됩니다.
만약 특정 라인으로 옮기고 싶다면..
SelStart := Memo1.Perform(EM_LINEINDEX, Row, 0);
과 같이 하면 됩니다.
즐푸하세여..
타락천사..
0
0
댓글
(NOTICE) You must be
logged in
to comment on this post.
▲┫┃■┃콜론
•
2002.10.22 03:52
1
COMMENTS
/
0
LIKES
바코드프린팅문제(cport262 & tec b-450-qp)10장째 출력 않되는 현상
▲┫┃■┃콜론
•
2002.10.24 20:44
왕델초보
2002.10.22 03:36
0
COMMENTS
/
0
LIKES
리스트뷰에서 컬럼헤더를 병합하는 방법이 있나요?
최무승
•
2002.10.22 03:04
3
COMMENTS
/
0
LIKES
데이터를 Insert하는데 무결성 에러가 발생합니다.
프리빌
•
2002.10.22 08:01
==================================== 오라클이라면 트랜젝션 처리는 하셨는지요. with DataBase,...
머슴
•
2002.10.22 04:42
도움이 될란지 모르지만.. iseq := table1.RecordCount + 1; ...
타락천사
•
2002.10.22 03:13
안녕하세여. 타락임다. 이렇게 해야 되지 않나여. 즐푸하세여. 타락천사..
안병찬
•
2002.10.22 02:58
1
COMMENTS
/
0
LIKES
델파이 5 msaccess(*.MDB) 실행시 에러가 남
조성환
•
2002.10.22 19:41
제생각에는.... 혹시 인스톨본을 만들 때 ODBC Setting 해주는 부분이있는데 이 ODBC 의 경로가 해당 파...
bigotry
2002.10.22 02:57
0
COMMENTS
/
0
LIKES
퀵리포트 출력시 문제점..
노동옥
•
2002.10.22 02:11
1
COMMENTS
/
0
LIKES
폼위치중앙으로....
타락천사
•
2002.10.22 02:16
안녕하세여. 타락임다. 폼의 Position Propety 에 poScreenCenter 값을 주세요.. 즐푸하세여..
김기자
2002.10.22 01:03
0
COMMENTS
/
0
LIKES
Gantt Chart에 관한 질문.
이현수
•
2002.10.22 01:02
1
COMMENTS
/
0
LIKES
TMemo에 관한질문입니다.
화면에서 메모를 사용중에 1. 메모에 입력된 글자가 총 얼마의 바이트를 넘게 되면 더이상 입력되지 않케 하는 방법 2. 그리고 한 라인상 몇바이트 이상 넘길시에 다음라인으로 넘어가는 방법을 몰라서 몇일동안 해매고 있습니다.--; 예전...
타락천사
•
2002.10.22 01:58
안녕하세여. 타락임다.. 우선 첫번째 방법은 procedure TFrmMain.Memo1KeyPress(Sender: TObject; v...
이슬비
2002.10.22 00:59
0
COMMENTS
/
0
LIKES
출력물을 만들려는데 좋은 툴이나 컴포넌트 있으면 소개좀 ...해주세요.
끈기아빠
2002.10.22 00:37
0
COMMENTS
/
0
LIKES
엑셀 종료시 리소스 반환???
노동옥
•
2002.10.22 00:35
1
COMMENTS
/
0
LIKES
form 닫기전에.....
정성훈
•
2002.10.22 00:53
Fom 의 이벤트중에 OnCloseQuery 가 있습니다. 거기다가 메시지 처리하세요.. procedure TF_Base_Main....
박정찬
•
2002.10.22 00:30
3
COMMENTS
/
0
LIKES
쓰레드처리하는데 무작위로 시스템이 홀드되면서 열어놓은 DB가 날라갑니다.
타락천사
•
2002.10.22 01:33
안녕하세여. 타락임다.. 사실 VC++ 로 개발 할 때보다 델파이로 하면 훨씬 Easy 하게 할수 있습니다. ...
박정찬
•
2002.10.22 03:52
DB connection이 너무 많이 열렸다는게 어떤 의미인가요? 죄송합니다. 제가 잘 이해를 못해서요. 일단 Thre...
타락천사
•
2002.10.22 04:35
안녕하세여. 타락임다.. 흠, 곰곰히 내용을 다시 읽어 봤습니다. '응용 프로그램 오류' 라는 메세지...
조덕진
•
2002.10.22 00:11
1
COMMENTS
/
0
LIKES
오라클 사용자 정의함수를 사용하려는데 ...
김지엽
•
2002.10.23 23:01
이렇게 짜면 어떨까요? CREATE OR REPLACE PROCEDURE FUNC_GET_AMT (IN_JIKG_CODE IN VARCHAR2, IN_HOBO...
곰다방~미스김
•
2002.10.21 23:58
1
COMMENTS
/
0
LIKES
파일을 db에올렸다 내려받는데....깨지네요...
타락천사
•
2002.10.22 01:22
안녕하세여. 타락임다.. 대강 블럽필드의 파일을 생성하는 코드를 함 만들어 봤어요.. 안돌려 봐서 ...
정성훈
2002.10.21 23:30
0
COMMENTS
/
0
LIKES
퀀텀그리드쓰시는분...
백지연
•
2002.10.21 23:24
1
COMMENTS
/
0
LIKES
퀵레포트.. ColumnHeaderBand값이 같이 프린트가 안됩니다.
끈기아빠
•
2002.10.22 01:32
저도 초보지만..^^;; 서브디테일밴드의 헤더밴드를 지정하셨는지요?? ColumnHeaderBand를 지정하더...
정성훈
•
2002.10.21 23:18
1
COMMENTS
/
0
LIKES
[동적쿼리+동적룩업필드] 또는 OpenRowSet 아시는분..
타락천사
•
2002.10.22 02:14
안녕하세여.. 타락임다.. 룩업필드는 DataSet 의 내용을 참조해서 필드내용을 만드는 것이기 때문에 Dat...
박운성
2002.10.21 22:53
0
COMMENTS
/
0
LIKES
[요청]...bcloffice2k50.bpl 파일 있으신분....
이지인
•
2002.10.21 22:49
1
COMMENTS
/
0
LIKES
널(#0)을 포함한 문자열을 통신으로 날려주는 방법은?
타락천사
•
2002.10.21 23:01
안녕하세여. 타락임다.. 후후.. C++ 에선 알아서 되다녀.. C/C++ , Delphi 모두 스트링은 '널 종료 문자...
byun
•
2002.10.21 22:47
3
COMMENTS
/
0
LIKES
메모에.. 라인별로 글자색을 각자 다르게 할수 있나요...
타락천사
•
2002.10.21 23:03
안녕하세여. 타락임다.. TMemo 인지 Note.exe 를 예기 하는 건지 잘 모르겠군여.. 하여간 둘다 글자...
byun
•
2002.10.21 23:14
감사합니다... 간단한 예제 부탁드립니다.
타락천사
•
2002.10.22 00:07
아래는 제가 쓰는 코드의 일부 입니다. reChat 는 TRichEdit 입니다. reChat.SelAttributes.Color :=...
이현수
2002/10/22 01:02
Views
276
Likes
0
Comments
1
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
우선 첫번째 방법은
procedure TFrmMain.Memo1KeyPress(Sender: TObject; var Key: Char);
begin
if Length(Memo1.Text) > 20 then
Key := #0;
end;
와 같이 하면 됩니다. 코드를 보면 아시겠지만, 텍스트 사이즈가 20이 넘으면 아무 키도 안먹습니다. backspare 등의 다른 키를 먹게 하려면 Key 값을 검사하면 되겠죠..
두번째 방법은... 졸라 어렵습니다..ㅡㅡ;;
먼저 현제 커서가 위치한 Row 를 얻어야 합니다.
Row := Memo1.Perform(EM_LINEFROMCHAR, -1, 0);
으로 Row 를 얻습니다.
그리고 위와 같이 KeyPress 이벤트에서 Length(Memo1.Lines[Row]) 값을 얻어서 일정 바이트 이상 넘으면 Memo1.Lines.Add() 하시면 됩니다.
만약 특정 라인으로 옮기고 싶다면..
SelStart := Memo1.Perform(EM_LINEINDEX, Row, 0);
과 같이 하면 됩니다.
즐푸하세여..
타락천사..