최명권 님이 쓰신 글 :
: OpenDialog 이 실행되면 특정경로(예를 들어 C:\Music)만 나오게 하는 방법이 있나요?
:
: 그리고 <뒤로>, <상위폴더로이동>, <새폴더만들기>, <메뉴보기> 등을 안나오게 하는 방법과
:
: 왼쪽에 <내최근문서>, <바탕화면>, <내문서>, <내컴퓨터>, <내네트워크환경> 얘네들 안나오게 하는 방법이 있을까요?
:
: 지금 찾고 있는데 안찾아져서, 혹시 없나해서요..
:
: 아님 직접 만들어야 할까요?
TOpenDialog를 상속받아서 하면 간단할것 같은데요...
<헤더>
//---------------------------------------------------------------------------
class TMyOpenDlg : public TOpenDialog
{
typedef Dialogs::TOpenDialog inherited;
private:
protected:
DYNAMIC void __fastcall DoShow(void);
public:
__fastcall TMyOpenDlg(TComponent* Owner) : TOpenDialog(Owner){};
};
//---------------------------------------------------------------------------
<구현>
void __fastcall TForm1::Button1Click(TObject *Sender)
{
TMyOpenDlg *tempOpenDialog = new TMyOpenDlg(Application);
tempOpenDialog->InitialDir = "C:\\Music\\"; //특정 Dir
tempOpenDialog->Options.Clear();
tempOpenDialog->Options << ofNoNetworkButton;
tempOpenDialog->OptionsEx.Clear();
tempOpenDialog->OptionsEx << ofExNoPlacesBar; //왼쪽메뉴 없애기
tempOpenDialog->Execute();
delete tempOpenDialog;
}
//---------------------------------------------------------------------------
void __fastcall TMyOpenDlg::DoShow()
{
HWND cWindHandle = FindWindowEx(GetParent(this->Handle),NULL,"ToolbarWindow32","");
ShowWindow(cWindHandle,SW_HIDE);
cWindHandle = FindWindowEx(GetParent(this->Handle),NULL,"ComboBox","");
EnableWindow(cWindHandle,FALSE);
}
|