Q&A

  • 들여쓰기....
리치에디터에서 각 줄마다 들여쓰기를 하려고 합니다.



음...좀 질문이 애매모호하죠....

자세히 설명하면요.... -.-



트리뷰 창이 있고 버튼이 여러개 있으며, 리치에디터가 하나 있습니다.

트리뷰에서 노드를 셀렉트한 후 버튼을 누르면 셀렉트한 노드 밑에 자식 노드가 각각

추가 되고, 동시에 리치에디터에 문장이 찍힙니다.

그런데...여기서요...그냥 맨 앞에부터 쭉 리치에디터에 찍히거든요..그래서 저는

들여쓰기(탭 단위로)를 하고 싶은데 어떻게 할지 모르겠습니다.



예)

트리뷰 리치에디터

학교 학교

대학교 대학교

자연대 자연대

공과대 공과대

고등학교 고등학교

인문고등학교 인문고등학교

실업고등학교 실업고등학교

이런식으로 리치에디터에 문장이 찍히는데요. 이렇게 말고

트리뷰에 나타는 것처럼 구분해 주고 싶어서요

학교

대학교

자연대....이런식으로 탭 단위로 또는 탭 단위가 아니더라도 그냥 구분되어 질 수

있도록 들여쓰기를 하고 싶습니다. -.-



var

sp : string;



procedure ~~~~

begin

sp := ' ';

HResInfo := FindResource(HInstance, 'TXT2','TEXT');

MemHandle := LoadResource(HInstance, HResInfo);

node_num := TreeView1.Selected.GetLastChild.AbsoluteIndex;

RichEdit1.Lines.Insert(node_num , sp + PChar(LockResource(Memhandle)));

FreeResource(MemHandle);

end



이런식으로 하면 들여쓰기는 되지만 그냥 다 7칸 뒤에서 부터 쭉 찍히게 되더군요.

그래서 어떻게 해야되는지... ㅠ.ㅠ

도움을 주십시요.













1  COMMENTS
  • Profile
    바사기몬 2000.09.26 23:46
    테스트 해본거라서 코드 축약이 안되 있습니다..

    응용하셔서 해보세요..

    그럼 이만..



    procedure TFormCommon.bbtnAcceptClick(Sender: TObject);

    var i,j :integer;

    str:string;

    begin

    RichEdit1.Lines.Clear;



    for i := 0 to TreeView1.Items.Count-1 do begin

    str := '';

    for j := 0 to TreeView1.items.Item[i].level-1 do str := str + #9;

    str := str + TreeView1.Items.Item[i].text;

    RichEdit1.Lines.Add( str );

    end;



    end;







    써니 wrote:

    > 리치에디터에서 각 줄마다 들여쓰기를 하려고 합니다.

    >

    > 음...좀 질문이 애매모호하죠....

    > 자세히 설명하면요.... -.-

    >

    > 트리뷰 창이 있고 버튼이 여러개 있으며, 리치에디터가 하나 있습니다.

    > 트리뷰에서 노드를 셀렉트한 후 버튼을 누르면 셀렉트한 노드 밑에 자식 노드가 각각

    > 추가 되고, 동시에 리치에디터에 문장이 찍힙니다.

    > 그런데...여기서요...그냥 맨 앞에부터 쭉 리치에디터에 찍히거든요..그래서 저는

    > 들여쓰기(탭 단위로)를 하고 싶은데 어떻게 할지 모르겠습니다.

    >

    > 예)

    > 트리뷰 리치에디터

    > 학교 학교

    > 대학교 대학교

    > 자연대 자연대

    > 공과대 공과대

    > 고등학교 고등학교

    > 인문고등학교 인문고등학교

    > 실업고등학교 실업고등학교

    > 이런식으로 리치에디터에 문장이 찍히는데요. 이렇게 말고

    > 트리뷰에 나타는 것처럼 구분해 주고 싶어서요

    > 학교

    > 대학교

    > 자연대....이런식으로 탭 단위로 또는 탭 단위가 아니더라도 그냥 구분되어 질 수

    > 있도록 들여쓰기를 하고 싶습니다. -.-

    >

    > var

    > sp : string;

    >

    > procedure ~~~~

    > begin

    > sp := ' ';

    > HResInfo := FindResource(HInstance, 'TXT2','TEXT');

    > MemHandle := LoadResource(HInstance, HResInfo);

    > node_num := TreeView1.Selected.GetLastChild.AbsoluteIndex;

    > RichEdit1.Lines.Insert(node_num , sp + PChar(LockResource(Memhandle)));

    > FreeResource(MemHandle);

    > end

    >

    > 이런식으로 하면 들여쓰기는 되지만 그냥 다 7칸 뒤에서 부터 쭉 찍히게 되더군요.

    > 그래서 어떻게 해야되는지... ㅠ.ㅠ

    > 도움을 주십시요.

    >

    >

    >

    >

    >

    >