Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[9600] Re:(질문) TMemo의 높이(Height)조절...
civilian [civilian] 929 읽음    2004-06-12 10:39
Form안에 있는 메모 컨트롤의 이름이 Memo1이라고 가정하면,
Memo1의 OnKeydown에 다음과 같은 이벤트 핸들러를 작성합니다.

procedure TForm1.Memo1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
var
  AHeight: Integer;
  ACanvas: TControlCanvas;
begin
  inherited;

  if Key = VK_RETURN then
  begin
    ACanvas := TControlCanvas.Create;
    try
      //
      // 메모 컨트롤의 라인수를 알아내어 폰트의 높이를 곱한다
      // 이것보다 메모 컨트롤의 높이가 적으면 늘린다.
      //
      ACanvas.Control := Memo1;
      AHeight := ACanvas.TextHeight('가') * (Memo1.Lines.Count + 1);
      if Memo1.Height < AHeight then
        Memo1.Height := AHeight;
    finally
      FreeAndNil(ACanvas);
    end;
    Key := 0;
  end;
end;

온라인상에서 작성해본 코드라 어떨런지 모르겠군요.

civilian

손동섭 님이 쓰신 글 :
: TMemo에 문자를 입력하면 입력되는 라인만큼
:
: TMemo의 높이를 라인에 맞게끔 늘려주고 싶습니다.
:
: 이전에 어디에서 API호출하여서 처리하는 것을 보았는데
:
: 찾을 수가 없네요??
:
: 고수님들의 조언부탁합니다.

+ -

관련 글 리스트
9599 (질문) TMemo의 높이(Height)조절... 손동섭 693 2004/06/12
9618     Re:(질문) TMemo의 높이(Height)조절... 박지훈.임프 901 2004/06/15
9600     Re:(질문) TMemo의 높이(Height)조절... civilian 929 2004/06/12
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.