Q&A

  • 리치에디트의 내용을 또다른 리치에디트에 넣는방법을 알고 싶어요.


안녕하세요. 우선 리치에디트가 두개가 있습니다. 한쪽에서 '보내기'버튼을 누르면 자동으로 다른페이지에 있는 리치에디트에 텍스트가 추가되는 것이지요. 그런데요 문제는 리치에디트에서 문자 폰트의 크기와 색깔이 다른쪽으로 이동을 하지 않는 것이지요.



RichEdit2.Text := RichEdit1.Text; 이 방법으로는 그냥 텍스트만 이동될 뿐이거든요.

물론 RichEdit2.Lines.Add(RichEdit1.Text);도 마찬가지고요.



그래서요 할수 없이 아래와 같은 방법을 사용했거든요.



RichEdit1.SelectAll;

RichEdit1.CopytoClipboard;

RichEdit2.PasteFromClipboard;

이렇게 하니까 RichEdit1의 내용이(글자폰트의 크기와 색상이) 정확하게 RichEdit2 안에

복사가 되었습니다. 그런데요. 이 방법은 조금 문제가 있어요. 일단 SelectAll된 구문이 시커멓게 반전되어 있어서 보기가 흉하거든요. 이걸또 제거해야하는 코드도 다시 집어 넣어야 하고요.



제가 생각하기에는...이런경우에 사용하는 어떤 함수가 없을까요. 리치에디트에서 리치에디트로 정확하게 문자를 보내는 좀더 나이스한 방법은 없을까요?



그런데 지금 이보다 더 심각한 문제는. 이 리치에디트에 있는 글자크기와 색상을 QReport에서 출력할 방법을 모르겠다는 것입니다.

누가 리치에디트에 있는 텍스트의 글자 크기와 색깔까지 모두 프린트 할 수 있는 방법을 알고 계시다면 가르쳐 주시면 고맙겠습니다.









2  COMMENTS
  • Profile
    김지태 2001.12.27 02:39
    동동 wrote:

    >

    > 안녕하세요. 우선 리치에디트가 두개가 있습니다. 한쪽에서 '보내기'버튼을 누르면 자동으로 다른페이지에 있는 리치에디트에 텍스트가 추가되는 것이지요. 그런데요 문제는 리치에디트에서 문자 폰트의 크기와 색깔이 다른쪽으로 이동을 하지 않는 것이지요.

    >

    > RichEdit2.Text := RichEdit1.Text; 이 방법으로는 그냥 텍스트만 이동될 뿐이거든요.

    > 물론 RichEdit2.Lines.Add(RichEdit1.Text);도 마찬가지고요.

    >

    > 그래서요 할수 없이 아래와 같은 방법을 사용했거든요.

    >

    > RichEdit1.SelectAll;

    > RichEdit1.CopytoClipboard;

    > RichEdit2.PasteFromClipboard;

    > 이렇게 하니까 RichEdit1의 내용이(글자폰트의 크기와 색상이) 정확하게 RichEdit2 안에

    > 복사가 되었습니다. 그런데요. 이 방법은 조금 문제가 있어요. 일단 SelectAll된 구문이 시커멓게 반전되어 있어서 보기가 흉하거든요. 이걸또 제거해야하는 코드도 다시 집어 넣어야 하고요.

    >

    > 제가 생각하기에는...이런경우에 사용하는 어떤 함수가 없을까요. 리치에디트에서 리치에디트로 정확하게 문자를 보내는 좀더 나이스한 방법은 없을까요?

    >

    > 그런데 지금 이보다 더 심각한 문제는. 이 리치에디트에 있는 글자크기와 색상을 QReport에서 출력할 방법을 모르겠다는 것입니다.

    > 누가 리치에디트에 있는 텍스트의 글자 크기와 색깔까지 모두 프린트 할 수 있는 방법을 알고 계시다면 가르쳐 주시면 고맙겠습니다.

    >

    >

    >

    >



    안냐세영?



    크리스마스는 잘 보내셨는징?



    rich edit에 대해서 정확히 말씀을 드리기에는 제가 잘 모르지만



    위의 경우라면 이렇게 한번 해 보시졍.



    Ed2.Text := Ed1.Text;

    Ed2.Font := Ed1.Font;



    저는 이렇게 하니깐 text 및 font도 같게 되더라구영..



    그럼 20000.



    form UserSpace





  • Profile
    동동 2001.12.27 03:37


    죄송합니다. 제가 질문을 제대로 하지 못했어요.

    우선 전체적인 Font가 문제가 아니라 그 중간에 삽입한 문자열이 문제입니다.

    예를들어, 중간에 저는 결과값을 강조하기 위해서 그 값에다 글자크기를 두껍게하고

    크기도 조금 늘였습니다. 예를 들면...



    RichEdit1.SelAttributes.Style := [fsBold]; 이렇게요.

    그리고 다시 이것을

    RichEdit1.SelAttributes.Style := []; 이렇게 해제했습니다.



    따라서 문자열 중 특정한 부분이 두껍게 표시되는 것이었죠.

    그런데 이것을 아래와 같이 하면 마찬가지로 두껍게 표시되는 부분이 사라지고 말아요.

    RichEdit2.Text := RichEdit1.Text;

    RichEdit2.Font := RichEdit1.Font;



    제가 알고 싶은 것은, 이렇게 특정 문자열중에 SelAttributes를 이용하여 폰트를 바꾼

    문자열을 똑같이 복사하고 싶은 것이고요. 그리고 더 중요한 것은, 이것을 제대로 프린트하는 것이죠. QReport로요.



    그런데 처음에 제가 질문했던 것과 마찬가지로...CopyToClipBoard 하고 PastFromClipBoard를 사용하면 RichEdit 간에는 똑같이 복사가 되는데요. 불행하게도

    QReport에 있잖아요. QRRichText라고요. 거기에는 PastFormClipBoard라는 메소드가 존재하질 않아요. 이거 어떻게 하면 되는지 지금 막혀 있거든요.

    혹시 알고 계시다면 알려 주시겠어요?