Q&A

  • Directorylistbox
directorylist box 에서요...

특정 디렉토리를 더블 클리하면 해당 디렉토리는 열린 모습이구...

하위 디렉토리가 나오잖아요...

그 열린 디렉토리를 클릭했을때 열려 있다는 걸 알려면 어찌하면 좋을까요?
1  COMMENTS
  • Profile
    최용일 2002.09.11 00:35
    안녕하세요. 최용일입니다.

    특별히 좋은 방법은 없는거 같네요... 디렉토리 구조의 특성을 이용하면 원하시는 결과를 얻을 수 있겠네요... 하위 디렉토리는 반드시 상위디렉토리의 패스를 포함한다...

    procedure TForm1.DirectoryListBox1Click(Sender: TObject);
    var
        SelIndex: Integer;
        SelPath, SubPath: string;
    begin
        SelIndex := DirectoryListBox1.ItemIndex;
        SelPath := DirectoryListBox1.GetItemPath(SelIndex);
        SubPath := DirectoryListBox1.GetItemPath(SelIndex + 1); // 선택된거 바로 아래 디렉토리
        DirectoryListBox1.GetItemPath(SelIndex + 1);
        if Pos(SelPath, SubPath) <> 0 then
            ShowMessage('해당 디렉토리가 열려져 있습니다.')
        else
            ShowMessage('해당 디렉토리가 펼쳐져 있습니다.');
    end;

    ^^ 항상 즐코하세요...