?
Hoppla
Naja. Dann leite die CFileDialog einfach ab, erzeuge einen leeren Dialog, gib ein Static Feld rein und du kannst den CFileDialog beliebig modifiezieren.
Mit anderen Worten:
Erstell einen Dialog, leite eine CDialog Klasse ab, ändere die abgeleitete Klasse nach CFileDialog und ersetzte ALLE CDialog nach CFileDialog. Aber nur in der .h !!!!! Erstell einen Staticrahmen und gib ihm die ID str32=0x045f - Titel bleibt leer.
Ändere den konstruktor
CMyFileDIALOG(BOOL bOpenFileDialog, LPCTSTR lpszDefExt = NULL, LPCTSTR lpszFileName = NULL, DWORD dwFlags = OFN_HIDREADONLY| OFN_OVERWRITEPROMT,LPCTSTR lpszFilter=NULL,CWnd pParentWnd = NULL);
Weiters:
CMyDialog::CMyDialog(BOOL bOpenFileDialog, LPCTSTR lpszDefExt, LPCTSTR lpszFileName, DWORD dwFlags,LPCTSTR lpszFilter,CWnd* pParentWnd = NULL)
:CfileDialog(bOpenFileDialog, lpszDefExt,lpszFileName,dwFlags,lpszFilter,pParentWnd)
{
m_ofn.Flags = OFN_ENABLETEMPLATE;
ofn.lpTemplateName = MAKEINTERNRESSOURCE(IDD_MYFILEDIALOG);
ofn.lpstrTitle = "Mein Filedialog";
m_bDeleteAll = FALSE;
}
Zugriff: GetParent()->GetDlgItem(...)->
Dateiname: GetParentItem(0x480)->GetWindowText(m_strFileName);
GetParent()->SensMessage(WM_COMMAND,IDCANCEL);
Aufruf: CMyFileDialog dlg(TRUE,NULL,"*dat");
mfg mike