Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.02.25;
Скачать: [xml.tar.bz2];

Вниз

Компонент 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.034 c
14-80234
LordOfSilence
2004-02-06 09:39
2004.02.25
Взрыв в московском метро


3-79596
Boroda Oleg
2004-02-02 13:05
2004.02.25
Вопрос к знатокам FIBPlus


1-79874
Andrey007
2004-02-10 12:56
2004.02.25
Как отсортировать TComboBox?


7-80325
DelphiNew
2003-12-02 11:40
2004.02.25
Проблема приёма данных с СОМ порта


1-79816
turonix
2004-02-11 11:03
2004.02.25
Создание таймера на 48 часов





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский