MFC로 간단한 프로그램 만들고있습니다. <div>구현하고자 하는 전체 동작은</div> <div><br></div> <div>경로설정(탐색기의 Tree처럼 선택)-> 경로에있는 특정확장자 파일(이미지로 예를 들고) 리스트박스에 추가(목록구성)</div> <div> -> 리스트박스에서 선택하면 해당파일 이미지 출력</div> <div><br></div> <div>이런 프로그램을 만들고싶은데</div> <div>경로설정과 리스트를 탭컨트롤로 만들었습니다.</div> <div>탭이 있는 메인다이얼로그</div> <div>탭1 다이얼로그 : 리스트박스</div> <div>탭2 다이얼로그 : 트리컨트롤..?</div> <div><br></div> <div>이렇게 구성해놓고 만들고 있습니다.</div> <div><br></div> <div>경로부터 어떻게 받아와야 할지 모르겠습니다.</div> <div>경로를 받아오고 그 경로데이터로 트리컨트롤을 만들고</div> <div>조작해서 메세지받아가지고 해야된다고 생각했는데</div> <div>경로를...</div> <div><br></div> <div>::SHBrowseForFolder(&BrlInfo) 이용해서 버튼누르면 경로설정 하는건 가능합니다.</div> <div>다만 새 창으로 뜨기때문에...</div> <div><br></div> <div>그냥 경로설정하는건 아무리 검색해봐도 이해가 안가서</div> <div>할줄아는 ::SHBrowseForFolder(&BrlInfo)를 이용해보자 싶었습니다.</div> <div><br></div> <div>지금 두가지방법을 시도해봤는데</div> <div>1) ::SHBrowseForFolder(&BrlInfo)를 탭안(탭2 다이얼로그)에 넣기</div> <div>2) ::SHBrowseForFolder(&BrlInfo)로 경로만 받아오고 트리컨트롤 구성</div> <div><br></div> <div>결과적으론 둘다 실패했습니다..</div> <div>1) ::SHBrowseForFolder(&BrlInfo)를 탭안에 넣는것은</div> <div>BROWSEINFO 구조체를 설정할때 .hwndOwner에 부모윈도우(이 경우 메인다이얼로그 맞나요?) 핸들을 넣으면</div> <div>될거라고 생각했는데 안되더라구요...</div> <div><br></div> <div>2) <span style="font-size:9pt;">::SHBrowseForFolder(&BrlInfo)로 첫 경로만 받아오고 트리컨트롤 구성하는건</span></div> <div><span style="font-size:9pt;">그냥 구현방식이 감이 안잡혀서 이리저리 치이다가 실패했습니다..</span></div> <div><span style="font-size:9pt;"><br><br></span></div> <div><span style="font-size:9pt;"><br></span></div> <div><span style="font-size:9pt;">제가 도움받고싶은건</span></div> <div><span style="font-size:9pt;">1. 탐색기를 구현할때 꼭 트리컨트롤로 구현해야하는지?</span></div> <div><span style="font-size:9pt;">(</span><span style="font-size:9pt;">::SHBrowseForFolder(&BrlInfo)를 탭컨트롤 안에 자식윈도우로 띄울순 없는지?)</span></div> <div><span style="font-size:9pt;"><br></span></div> <div><span style="font-size:9pt;">2. 1이 안된다면 경로를 받아와 트리컨트롤 구성하여 탐색기를 만들어야 하는데 어느쪽으로 가닥을 잡아야 하는지..</span></div> <div><span style="font-size:9pt;"><br></span></div> <div><span style="font-size:9pt;">+ 지금 </span><span style="font-size:9pt;">::SHBrowseForFolder(&BrlInfo)가 메인다이얼로그 OnInitDialog에 들어가있습니다.</span></div> <div><span style="font-size:9pt;">처음 실행하면 바로뜨더라구요.</span></div> <div><span style="font-size:9pt;">질문글 작성하다가 혹시 싶어서 시도해본것이</span></div> <div>::SHBrowseForFolder(&BrlInfo)를 </div> <div><span style="font-size:9pt;">탭이 들어가있는 메인 다이얼로그에 탭1다이얼로그 탭2다이얼로그를 넣었는데</span></div> <div>탭다이얼로그의 OnInitDialog나 ShowWindow, DoModal(이거는 모달형식이라 아니겠지만 혹시나해서) 아무 메세지도 못받더라구요.</div> <div>어떠한 방법을 써서 별도로 메세지를 넘겨주어야 되나요?</div> <div><br></div> <div>+자꾸 추가되서 죄송합니다만</div> <div><span style="font-size:9pt;">~~Dlg::DoModal()함수의 리턴이 왜 return CDialog::DoModal()인가요?</span></div> <div>재귀함수형식 아닌가요?</div> <div><br></div> <div><br></div> <div><br></div> <div>아직 초보라 객체지향 개념도 안잡힌것 같습니다.</div> <div>멍청한놈 구제해주는셈 치고 도와주세요 ㅠㅠㅠ</div>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.