Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.02.25;
Скачать: CL | DM;

Вниз

Компонент OpenDialog   Найти похожие ветки 

 
novi   (2004-02-10 20:27) [0]

Уважаемые мастера подскажите как: 1) можно записать предложение для проверки существования файла; 2) можно записать сообщение об отсутствии требуемого файла?


 
Семен Сорокин ©   (2004-02-10 20:38) [1]

э-э-э
1) как можно записать предложение для проверки существования файла;
"А Вы не желаете ли проверить наличие файла в системе?"
2) как можно записать сообщение об отсутствии требуемого файла?
"Извини чувак, такого файла нет."
:))


 
Юрий Зотов ©   (2004-02-10 20:39) [2]

Проще всего выставить опцию FileMustExists - тогда диалог все сделает сам. А вручную можно вызвать FileExists.


 
Дубинин Алексей ©   (2004-02-10 20:50) [3]

Не совсем понятно, что именно Вы хотите.
Если я правильно понял, то используйте для проверки существования файла: FileExists(FileName: String)
если функция возвратит False то файла не существует по этому пути.


 
heady   (2004-02-10 20:52) [4]

Простите что лезу в чужую ветвь :) А как покрасивше проверить ВОЗМОЖНОСТЬ создания файла(пока не создавая его) по адресу указанному юзером в Edit, например чтобы исключить опечатки... перефразирую - есть Edit в который юзер должен ввести адрес сохраняемого файла - как проверить корректность его ввода?


 
Юрий Зотов ©   (2004-02-10 21:01) [5]

> heady (10.02.04 20:52) [4]

Ну, раз существет FileExists, то логично предположить, что существует и DirectoryExists, верно? И остается только проверить по справке.


 
heady   (2004-02-10 21:15) [6]

Юрий Зотов
{$I-}
reset(Edit1.Text);
if IOResult<>0 then
begin
rewrite(Edit1.Text);
if IOResult<>0 then write("Некоректный ввод");
end
else write("ввод коректен - файл существует");

так я бы написал на Tp7... а работает ли это в дельфях или как это оформить покрасивше (чтобы не затирать файл) через какой нить там maskEdit..


 
Юрий Зотов ©   (2004-02-10 21:31) [7]

> heady (10.02.04 21:15) [6]

Во-первых, ТОЧНО то же самое сработает и в Delphi (только, конечно, в консольном приложении). Во-вторых, в Delphi можно и проще:

if FileExists(Edit1.Text) then
begin
... // все ОК, работаем с файлом
end
else ShowMessage("Файл " + Edit1.Text + " не найден");


 
heady   (2004-02-10 21:34) [8]

спасибо конечно, но вопрос был:
есть Edit в который юзер должен ввести адрес СОХРАНЯЕМОГО файла - как проверить корректность его ввода?
я предложил:
{$I-}
reset(Edit1.Text);
if IOResult<>0 then
begin
rewrite(Edit1.Text);
if IOResult<>0 then write("Некоректный ввод");
end
else write("ввод коректен - файл существует");
как бы это покрасивше переделать средствами Delphi?


 
Юрий Зотов ©   (2004-02-10 21:42) [9]

Не надо использовать Edit - есть специально для этого сделанный SaveDialog. Посмотрите его свойства - там в Options настраиваются все проверки и он САМ проверит все, что Вы ему укажете. В том числе, и существование файла. Причем указывается это мышкой, без единой строчки кода. А в коде надо повесить на событие OnClick какой-нибудь кнопки вот что:

if SaveDialog1.Execute then
begin
... // Все ОК, сохраняем в файл SaveDialog1.FileName
end;

А как сделать все-таки с Edit - уже было написано.


 
Meson ©   (2004-02-10 23:59) [10]

А как использовать TOpenDialog для выбора не файла, а каталога?


 
Palladin ©   (2004-02-11 00:59) [11]

Никак, для этого есть SelectDirectory или SHBrowseForFolder из ShlObj

Видите как просто до всего догадатся самому. Используя хотя бы rus-eng словарик...


 
тихий вовочка   (2004-02-11 06:44) [12]

Если вводится новое имя, то нужно проверять CreateFile на возврат INVALID_HANDLE_VALUE и смотреть GetLastError



Страницы: 1 вся ветка

Текущий архив: 2004.02.25;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.02 c
14-80155
Knight
2004-02-05 19:07
2004.02.25
Офисные АТС


14-80228
tvm
2004-02-04 23:28
2004.02.25
я только учусь


3-79556
Zilog
2004-01-29 13:59
2004.02.25
Query. Просмотр результатов...


1-79725
Awod
2004-02-12 11:59
2004.02.25
Плывушие шрифты


4-80352
Ivan K.
2003-12-18 07:43
2004.02.25
Как получить названия окон?