Hallo zusammen,
kann ich obigen Zusammenhang (unter Windows) diesen Button ("Neuen Ordner erstellen") ausblenden?
Danke für Tips, Bernd
QFileDialog::getExistingDirectory ohne "neuer Ordner&qu
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Hmm, wie soll ich eine Klasse davon ableiten, um das Einblenden des "New Folder"-Buttons zu verhindern. Ich habe ja keinen Zugriff auf diesen Button, um etwas wie setVisible(FALSE) zu machen.Christian81 hat geschrieben:Bin mir jetzt auch nicht ganz sicher ob es dafür eine Funktion gibt. Notfalls von QFileDialog ableiten wenn man die Funktion wirklich braucht...
Ich hab mal im Quelltext von "qfiledialog_win.cpp" nachgesehen, wie das eigentlich implementiert ist:
Code: Alles auswählen
BROWSEINFO bi;
bi.hwndOwner = (parent ? parent->winId() : 0);
bi.pidlRoot = NULL;
bi.lpszTitle = (TCHAR*)tTitle.utf16();
bi.pszDisplayName = initPath;
bi.ulFlags = BIF_RETURNONLYFSDIRS | BIF_STATUSTEXT | BIF_NEWDIALOGSTYLE;
bi.lpfn = winGetExistDirCallbackProc;
bi.lParam = LPARAM(&initDir);
LPITEMIDLIST pItemIDList = ptrSHBrowseForFolder(&bi);
if (pItemIDList) {
ptrSHGetPathFromIDList(pItemIDList, path);
IMalloc *pMalloc;
if (SHGetMalloc(&pMalloc) != NOERROR)
result = QString();
else {
pMalloc->Free(pItemIDList);
pMalloc->Release();
result = QString::fromUtf16((ushort*)path);
}
} else
result = QString();
bi.ulFlags = BIF_RETURNONLYFSDIRS | BIF_STATUSTEXT | BIF_NEWDIALOGSTYLE;
zu
bi.ulFlags = BIF_RETURNONLYFSDIRS;
hätte ich das, was ich möchte. Aber es macht ja nicht wirklich Sinn, dafür die QT-Libs neu zu kompilieren?!
Gruß, Bernd