| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > Диалог "Открыть папку" |
| Автор: artsb 24.11.2007, 23:42 |
| Подскажите как открыть диалог выбора папки. Не TOpenDialog, а там маленькое окошко с деревом каталагов. Желательно, чтобы можно было создавать новую папку с помощью него. Ну и расскажите плиз как с ним работать. Среди стандартных не нашёл (может плохо искал Спасибо. |
| Автор: Fazil6 25.11.2007, 00:37 | ||
|
| Автор: artsb 25.11.2007, 21:52 |
| А какой-нибудь компонент нужно кидать на форму? Не мог бы объяснить то, что написал? И куда сохраняется выбранный путь? |
| Автор: Fazil6 25.11.2007, 21:58 |
сори, конечно первым параметром должна быть ссылка и это не скомпилится. В эту ссылку и сохранится. В хэлпе билдера все что нужно про эту функцию написано. |
| Автор: artsb 25.11.2007, 22:45 |
| Спасибо разобрался, но это не совсем, то, что нужно. Посмотрите скрин. Это выбор папки с музыкой в винампе. |
| Автор: Nat 26.11.2007, 08:34 |
| Попробуй RX компаненты, в частности RXDirectoryEdit и RXFilenameEdit. |
| Автор: artsb 26.11.2007, 10:01 |
| Попробовал,то , что предлагал Nat, но это тоже самое о чём писал Fazil6. А мне нужно вызвать такое окно как на рисунке. Помогите плиз. |
| Автор: artsb 26.11.2007, 18:23 |
| Fazil6 спасибо, получилось. А как добавить поле "Создать папку"? |
| Автор: artsb 27.11.2007, 10:15 | ||
На другом форуме подсказали, что можно с помощью API функции.
Это как раз то, что нужно. Только как сделать, чтобы отображалась кнопка для создания новой папки? |
| Автор: artsb 27.11.2007, 16:37 |
| Так кто-нибудь знает или нет? |
| Автор: artsb 27.11.2007, 17:19 | ||
На другом форуме советуют пользоваться функцией SHGetPathFromIDList.
Но когда я пишу этот код, при запуске вылетают ошибки. Может нужно какие-то библиотеки или ещё что-то подключить? |
| Автор: artsb 27.11.2007, 23:36 |
| Народ ну помогите-е-е-е! Странно?! Такое ощущение как-будто с этим никто и никогда не сталкивался. Может есть компонент какой-нибудь? Вот картинка, того что мне нужно: |
| Автор: artsb 28.11.2007, 21:59 |
| НУ помогите плиз. |
| Автор: Alca 29.11.2007, 10:20 | ||
| #include <shlobj.h> http://www.soft32.ru/delphi.shtml?topic=app&title=sel_dir_mk_dir
|
| Автор: artsb 29.11.2007, 19:01 | ||
| На форме Edit1 и Button1. Подключил shlobj.h В обработчике нажатия кнопки написал:
При запуске вылетает: [C++ Error] shobjidl.h(2193): E2238 Multiple declaration for 'FOLDERSETTINGS' [C++ Error] shobjidl.h(8095): E2238 Multiple declaration for 'DESKBANDINFO' [C++ Error] shlobj.h(1422): E2238 Multiple declaration for 'FVSHOWINFO' [C++ Error] shlobj.h(3457): E2238 Multiple declaration for 'SHELLFLAGSTATE' В чём может быть дело? |
| Автор: Alca 29.11.2007, 19:25 |
| Я просто в shlobj.h переименовал: FOLDERSETTINGS -> FOLDERSETTINGS_ DESKBANDINFO -> DESKBANDINFO_ FVSHOWINFO -> FVSHOWINFO_ SHELLFLAGSTATE -> SHELLFLAGSTATE_ Может какие-то ещё способы есть - я не парился, сделал так. |
| Автор: artsb 29.11.2007, 22:55 |
| Всё! Спасибо! То что нужно! Интересно, а то что я в shlobj.h произвёл изменения как Alca советовал, не повлечёт за собой каких-нибудь последствий??? И ещё, кто-нибудь может объяснить предназначение всех флагов? |
| Автор: dumb 30.11.2007, 21:46 | ||
http://forum.vingrad.ru/forum/topic-106576/index.html |
| Автор: Alca 30.11.2007, 22:28 | ||
Шура не бейте! |
| Автор: artsb 1.12.2007, 16:23 |
| dumb спасибо. Всем спасибо. |