Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.018 c
1-79936
goliath
2004-02-09 17:10
2004.02.25
Рекурсивный поиск


3-79662
Вованчик
2004-02-03 08:01
2004.02.25
снова IBUpdateSQL


9-79528
m2003
2003-08-11 12:33
2004.02.25
Сообщение EOutOfResources


1-79810
Doddy
2004-02-05 12:52
2004.02.25
Интеграция CHM файла в программу.


1-79982
h0use
2004-02-13 15:45
2004.02.25
Как из строки где записано 16-ное число сделать Integer




   Наверх