Вниз
Скачать: 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.041 c
14-80257
VEG
2004-02-04 00:12
2004.02.25
Вопрос об STL в C++Builder 6 и Visual C++ 6


1-79761
Igor G
2004-02-14 12:01
2004.02.25
Как уменьшить изображение


1-79954
Tigran
2004-02-13 19:51
2004.02.25
Откуда можно скачать Delphi 6,7 или 8


1-79707
неуловимый джо
2004-01-23 13:27
2004.02.25
Скрыть MainMenu


14-80291
Soft
2004-02-01 12:28
2004.02.25
Ученые раскрыли тайну русского алкоголизма




   Наверх