Q&A

  • TMemo의 크기는 32KB인데..
일반컴퍼넌트 란을 보니까...

다음과 같은 글이 있네요.



[Q20] Delphi에서 Memo 필드의 크기는 무엇입니까?

[A20] Delphi의 TEdit와 TMemo component는 MS Windows상의 응용프로그램이 사용하는 일반 Edit Control 입니다.

그러므로 Windows가 제공하는 Edit Control은 공통적으로 32KB의 한계를 가지고 있습니다.



32KB이상의 글을 쓰려면 어떻게 해야 하나요..?

TRichEdit를 사용하면 되나요..??





2  COMMENTS
  • Profile
    장은석 2000.03.10 02:43
    소심남 wrote:

    > 일반컴퍼넌트 란을 보니까...

    > 다음과 같은 글이 있네요.

    >

    > [Q20] Delphi에서 Memo 필드의 크기는 무엇입니까?

    > [A20] Delphi의 TEdit와 TMemo component는 MS Windows상의 응용프로그램이 사용하는 일반 Edit Control 입니다.

    > 그러므로 Windows가 제공하는 Edit Control은 공통적으로 32KB의 한계를 가지고 있습니다.

    >

    > 32KB이상의 글을 쓰려면 어떻게 해야 하나요..?

    > TRichEdit를 사용하면 되나요..??

    >

    >





    리치에디터는 메모컴포넌트를 상속한

    RTF형식의 파일도 읽거나 편집할 수 있는 컴포넌트 입니다.

    또한 리치에디터는 폰트 조절과 문단 조정 까지 가능하며

    Print, FindText 메소드등의 기능으로 인쇄를 하거나

    문자열 검색도 가능하게 해주기 때문에

    간단한 워드프로세서를 제작할 수도 있습니다.

    책에서 참조한 내용으론 델파이 1.0에선 64kb이상의 RTF파일은 에러가

    발생했으나 델파이 2.0이상에서는 그 이상도 읽을수 있다고 합니다.

    그래서 제가 간단한 어플리케이션을 만들어서 byte수를 산출해 봤지만

    10000000 byte (약 10메가)까지는 이상없더군요 그 이상 100MB로 시험해

    봤지만 그만한 용량을 읽기까지 너무 오랜 시간이 걸려서 중간에 그만 두었습니다. ^^

    아마 어느순간엔가 OutOfMemory가 발생할 겁니다.

    그러니 대용량 브리태니커 백과사전을 만들려고 하지 않는한 웬만한건 리치에디터로 쓰시고

    혹시 모를 에러에 대비해 try except 구문을 사용해 보시는게 좋을듯 싶군요..

    참고 하세요..





  • Profile
    이정욱 2000.03.09 23:15
    네.. RichEdit을 사용하세요.



    소심남 wrote:

    > 일반컴퍼넌트 란을 보니까...

    > 다음과 같은 글이 있네요.

    >

    > [Q20] Delphi에서 Memo 필드의 크기는 무엇입니까?

    > [A20] Delphi의 TEdit와 TMemo component는 MS Windows상의 응용프로그램이 사용하는 일반 Edit Control 입니다.

    > 그러므로 Windows가 제공하는 Edit Control은 공통적으로 32KB의 한계를 가지고 있습니다.

    >

    > 32KB이상의 글을 쓰려면 어떻게 해야 하나요..?

    > TRichEdit를 사용하면 되나요..??

    >

    >