| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Программирование, связанное с MS Office > Где достать кнопку New Folder? |
| Автор: Kindgott 1.12.2004, 18:46 |
| Доброго всем времени суток. Передо мной встала проблема выбора директории при помощи стандартных окон: В стандартном диалоговом окне GetOpenFileName из comdlg32.dll для выбора файла меня все устраивает, зато вот в BrowseForFolder мне не нравится то что там не хватает элементарного - кнопки создания новой папки. Получается, что юзер должен специально лазить и создавать папку, чтобы она уже была к моменту выбора. Форменное безобразие! Сопсно, вопрос: Есть ли какой-нибудь параметр для GetOpenFileName чтобы его можно было заставить открывать директории (а не только файлы), или вообще что-нить другое, предназначенное для выбора директорий, содержащее в себе кнопки создания/удаления новой папки. Вся эта байда используется в базе *.mdb Всем спасибо за внимание. |
| Автор: Cashey 3.12.2004, 09:27 |
| На сколько я знаю, Билл такой возможности не предусмотрел. Пиши свое диалоговое окно, что еще можно сказать |
| Автор: Гость_Kindgott 3.12.2004, 15:19 |
| Да как же он не предусмотрел, когда эта ****** ежедневно передо мной мелькает? Пуск -> Найти -> Файлы и папки -> Где искать: ->Обзор... (у меня Windows 2000 Professional) Я видел в msdn текст с указанием поставить в параметр ulFlags для BrowseForDirectory что - то вроде BIF_NEWSTYLE, уверяя что на этом мои мучения окончатся, но ничего подобного не случилось. Да ладно, фиг с ним. Оно не стоит моих нервов - все равно для себя пишу. |
| Автор: Registr 28.12.2004, 16:04 |
| '*****Функция диалога выбора каталога или его создания. Вид диалога зависит от 'параметра View, так значение 70 позволяет не только выбирать 'существующий каталог, но и создавать новый. Вообщем есть где поэкперементировать Public Function BrowseForFolder(View As Long, hwndOwner As Long, sPrompt As String) As String Const MAX_PATH = 260 Dim intNull As Integer Dim lngIdList As Long Dim udtBI As BrowseInfo With udtBI .hwndOwner = hwndOwner .lpszTitle = sPrompt .ulFlags = View End With lngIdList = SHBrowseForFolder(udtBI) If lngIdList Then strPath = String$(MAX_PATH, 0) SHGetPathFromIDList lngIdList, strPath CoTaskMemFree lngIdList intNull = InStr(strPath, vbNullChar) If intNull Then strPath = Left$(strPath, intNull - 1) End If BrowseForFolder = strPath End Function '*****Конец функции диалога выбора каталога или его создания***** |