![]() |
Модераторы: Akina |
![]() ![]() ![]() |
|
ИгнатьевАлексей |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 369 Регистрация: 18.11.2005 Репутация: нет Всего: 3 |
Друзья! Подскажите пожалуйста!
Надо на форме получать путь к папке в текстовом виде. Не могу найти ничего подходящего и готового. Т.е. надо нечто подобное CommonDialog\ShowOpen, только для выбора папок, а не файлов. Заранее благодарен! -------------------- Vingrad - FOREVER !!! "Как вы яхту назовете - так она и поплывет!" Капитан Врунгель |
|||
|
||||
mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 11 Всего: 109 |
ИгнатьевАлексей, я в таких случаях обычно использую DirListBox совместно с DriveListBox.
При необходимости выношу их на отдельную формочку... Кода там требуется, ну... Строк 5. Не больше. Если хочешь, дам примерчик... Добавлено @ 12:32 Короче так... На форму бросаешь DirListBox и DriveListBox Пишешь код события изменения DriveListBox для того, чтобы согласовать оба элемента.
А потом обрабатываешь событие даблклик по DirListBox и берёшь от него свойство .path Это и будет полный путь к твоеё папке... Добавлено @ 12:34 а.... Замечание, если в DriveListBox выберешь дискету, а дискеты не будет, то прога вылетит, т.е. нужен обработчик ошибок... Подходит идея? Добавлено @ 12:36 А можно использовать стандартный диалог ShowOpen, но немного через... Гм... ![]() В приличном обществе о таком не говорят... ![]() Это сообщение отредактировал(а) mihanik - 28.7.2006, 12:37 |
|||
|
||||
ИгнатьевАлексей |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 369 Регистрация: 18.11.2005 Репутация: нет Всего: 3 |
Спасибо, приятель!
Исчерпывающе! Да вот я думал, что человечество уже сделало это. Не потому, что лень 5 строк кода написать, а потому, что стандартные вещи удобнее, как правило и элегантнее, не так ли? -------------------- Vingrad - FOREVER !!! "Как вы яхту назовете - так она и поплывет!" Капитан Врунгель |
|||
|
||||
mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 11 Всего: 109 |
||||
|
||||
ИгнатьевАлексей |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 369 Регистрация: 18.11.2005 Репутация: нет Всего: 3 |
Передо мной по кругу лежат 5 книжек. Обзорно просмотрел - кроме того, о чем ты мне любезно рассказал, не нашел! Из чего делаю вывод, что если и есть что либо подобное, то не в составе базовых вещей. Хотя хочется верить, что это не так.
![]() -------------------- Vingrad - FOREVER !!! "Как вы яхту назовете - так она и поплывет!" Капитан Врунгель |
|||
|
||||
ИгнатьевАлексей |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 369 Регистрация: 18.11.2005 Репутация: нет Всего: 3 |
Ой беда!
Я и забыл, что пишу это в VBA, а там мне что-то это не найти! Может же такое быть? -------------------- Vingrad - FOREVER !!! "Как вы яхту назовете - так она и поплывет!" Капитан Врунгель |
|||
|
||||
mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 11 Всего: 109 |
Не расстраивайся!!!
Я знаешь как сделал однажды в Excel'e? Создал форму, разместил на ней CommonDialog и пользовался им спокойно. Например так...
А кто тебе мешает создать форму? ![]() Добавлено @ 14:18 Кроме того!!! На форме ты же можешь и DirListBox совместно с DriveListBox разместить... |
|||
|
||||
Dexx |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 292 Регистрация: 13.6.2005 Репутация: 5 Всего: 7 |
Функция SHBrowseForFolder
Описание : Выводит на экран диалоговое окно ' Выбор папки'. Операционная система : Windows NT 4.0 или выше; Windows 95 или выше Библиотека : Shell32.dll
Вот так и не важно VB или VBA Это сообщение отредактировал(а) Dexx - 28.7.2006, 14:35 -------------------- |
|||
|
||||
mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 11 Всего: 109 |
Dexx!!!
О! Классно!!! Думаю, что ИгнатьевАлексей, это понравится... ![]() |
|||
|
||||
ИгнатьевАлексей |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 369 Регистрация: 18.11.2005 Репутация: нет Всего: 3 |
Понравилось, хотя и заморочно. Dexx, Вопросик по коду, если позволите.
Зачем это делается? Ведь это переменная типа Long, или не так просто? Почему к ней такое особое внимание? mihanik,
Вот и проблема в этом, что в VBA я не нашел таких компонентов для формы, а в VB они есть. Или ты имеешь в виду создать форму в VB, а не в VBA? -------------------- Vingrad - FOREVER !!! "Как вы яхту назовете - так она и поплывет!" Капитан Врунгель |
||||||
|
|||||||
mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 11 Всего: 109 |
Покопайся среди Additional Controls. (Правой кнопкой по тулбоксу ) Там наверняка должно быть что-нибудь подобное... Сейчас копаться некогда!!! Убегаю с работы!!! Завтра или в понедельник посмотрю... |
|||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 34 Всего: 454 |
Не заморочно, а правильно. Если очень хочется остаться в рамках регистрированных компонентов - то надо использовать CommonDialuog.ShowOpen - однако он предназначен для выбора файла, а не каталога. Что же до создания собственной формы с DriveListBox/DirListBox - вот это действительно путь через то самое место, и нужно очень много причин для выбора ТАКОГО пути. Сорри, не мог не высказаться. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
Дмит |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 117 Регистрация: 21.4.2006 Где: г.Волгоград Репутация: 1 Всего: 9 |
В Excel 2000 можно так:
Это сообщение отредактировал(а) cardinal - 29.7.2006, 01:29 |
|||
|
||||
cardinal |
|
|||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: 19 Всего: 99 |
-------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
|||
|
||||
ИгнатьевАлексей |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 369 Регистрация: 18.11.2005 Репутация: нет Всего: 3 |
mihanik, да не надо уже, спасибо! Дмит предложил классную вещь, как мне кажется, я в книжке ее не заметил!
Akina, скажи, пожалуйста, а то, что Дмит предложил по какой-то причине хуже, чем SHBrowseForFolder? -------------------- Vingrad - FOREVER !!! "Как вы яхту назовете - так она и поплывет!" Капитан Врунгель |
|||
|
||||
![]() ![]() ![]() |
Правила форума "VB6" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | VB6 | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |