Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как диалоговым окном открыть дирикторию 
:(
    Опции темы
Xela
Дата 23.5.2007, 17:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 2.6.2005

Репутация: -1
Всего: нет



Как сделать ввод дириктории пользователем в прогу при помощи диалогового окна??
Наподобии TOpenDialog
PM MAIL   Вверх
Vyacheslav
Дата 23.5.2007, 17:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2124
Регистрация: 25.3.2002
Где: Москва

Репутация: 47
Всего: 59



Из хелпа smile
Цитата

#include <FileCtrl.hpp>
const SELDIRHELP = 1000;
void __fastcall TForm1::Button1Click(TObject *Sender)
{
  AnsiString Dir = "C:\\Program Files\\MyApp";
  if (SelectDirectory(Dir, TSelectDirOpts() << sdAllowCreate << sdPerformCreate << sdPrompt,SELDIRHELP))
    Label1->Caption = Dir;
}



--------------------
С уважением, Вячеслав Ермолаев
PM MAIL WWW ICQ   Вверх
Klin
Дата 23.5.2007, 22:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1938
Регистрация: 7.10.2002
Где: Краснодар

Репутация: 20
Всего: 25



Vyacheslav, тут проще можно.
Код

 if (OpenDialog1->Execute()) Label1->Caption = OpenDialog1->FileName;



--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
dumb
Дата 24.5.2007, 10:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 32
Всего: 158



Klin, ты хоть бы прочитал вопрос... про OpenDialog автор вопроса сам знает. smile
PM MAIL   Вверх
Xela
Дата 24.5.2007, 10:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 2.6.2005

Репутация: -1
Всего: нет



Цитата(Klin @ 23.5.2007,  22:17)
Код

 if (OpenDialog1->Execute()) Label1->Caption = OpenDialog1->FileName;

Ты крут  smile 
Ещё раз в прогу нужно ввести дирекрорию удобным способом
PM MAIL   Вверх
Klin
Дата 24.5.2007, 13:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1938
Регистрация: 7.10.2002
Где: Краснодар

Репутация: 20
Всего: 25



Цитата(Xela @  24.5.2007,  11:52 Найти цитируемый пост)
Ещё раз в прогу нужно ввести дирекрорию удобным способом

Сейчас словарь достану, и узнаю, что такое удобный способ для Xela,   smile 


--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
dumb
Дата 24.5.2007, 14:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 32
Всего: 158



Цитата(Klin @  24.5.2007,  13:06 Найти цитируемый пост)
Сейчас словарь достану, и узнаю, что такое удобный способ для Xela

OpenDialog'ом ты ни удобным, ни неудобным способом каталог не выберешь.
PM MAIL   Вверх
Klin
Дата 24.5.2007, 17:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1938
Регистрация: 7.10.2002
Где: Краснодар

Репутация: 20
Всего: 25



dumb, ошибаетесь smile Достаточно немного подумать:
Код

 OpenDialog1->FileName = "*.";
 OpenDialog1->Options << ofNoValidate;
 if (OpenDialog1->Execute())
 Label1->Caption = OpenDialog1->FileName;



--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
dumb
Дата 24.5.2007, 18:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 32
Всего: 158



Klin, "извернуться" можно по-всякому - вплоть до исправления кода rtl или api функций, но надо ли оно вопрошающему?

к тому же, твой изворот у меня не работает. smile может еще какую-то опцию на компоненте изменил?
PM MAIL   Вверх
Vyacheslav
Дата 24.5.2007, 18:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2124
Регистрация: 25.3.2002
Где: Москва

Репутация: 47
Всего: 59



Так я все таки не понял, чем плох стандартный SelectDirectory для выбора директории  пользователем


--------------------
С уважением, Вячеслав Ермолаев
PM MAIL WWW ICQ   Вверх
Klin
Дата 24.5.2007, 19:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1938
Регистрация: 7.10.2002
Где: Краснодар

Репутация: 20
Всего: 25



Vyacheslav, да ни чем, в вопросе был затронут OpenDialog, поэтому я его и использовал.

Цитата(dumb @  24.5.2007,  19:40 Найти цитируемый пост)
 вплоть до исправления кода rtl или api функций,

Не, ну это уже  smile 

Цитата(dumb @  24.5.2007,  19:40 Найти цитируемый пост)
к тому же, твой изворот у меня не работает.

Сейчас проверим.

Добавлено через 2 минуты и 38 секунд
dumb, все как по маслу... выбираете папку, да нажимаете открыть.


--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
dumb
Дата 24.5.2007, 20:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 32
Всего: 158



Цитата(Klin @  24.5.2007,  19:09 Найти цитируемый пост)
выбираете папку, да нажимаете открыть.

угу. и происходит смена папки на выбранную - диалог не закрывается... ну т.е. как обычно ведет себя...

Добавлено через 2 минуты и 16 секунд
и это... могу я просить ко мне на "ты"(как это принято при общении в сети)?
PM MAIL   Вверх
Klin
Дата 24.5.2007, 21:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1938
Регистрация: 7.10.2002
Где: Краснодар

Репутация: 20
Всего: 25



Цитата(dumb @  24.5.2007,  21:07 Найти цитируемый пост)
и это... могу я просить ко мне на "ты"(как это принято при общении в сети)?

это можно, просто некоторые обижаются smile

Вот исходник. Работает?

Присоединённый файл ( Кол-во скачиваний: 9 )
Присоединённый файл  mysample.zip 3,80 Kb


--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
Fazil6
Дата 24.5.2007, 21:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1653
Регистрация: 3.5.2006
Где: Минск

Репутация: 11
Всего: 60



Цитата(Klin @  24.5.2007,  21:21 Найти цитируемый пост)
Вот исходник. Работает?

как он должен работать? Там файл нужно выбирать, а не каталог
PM MAIL   Вверх
Klin
Дата 24.5.2007, 22:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1938
Регистрация: 7.10.2002
Где: Краснодар

Репутация: 20
Всего: 25



Это без настройки типа. Как говорится с чистого листа. 
1) Выбирается директория
2) Открывается эта директория
3) Нажимаем открыть

Если хотите, чтобы выводились директории создайте тип:
название: Папки
расширение: *.

Добавлено через 1 минуту и 51 секунду
Народ, мое дело предложить, а что использовать в своей программе - каждый решает сам.


--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0603 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.