Delphi-Help

TSaveDialog

Печать
Рейтинг пользователей: / 2
ХудшийЛучший 

TSaveDialog

Описание

type TSaveDialog;

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

Он может быть определен перемещением значок с вкладки Dialogs или определяя переменную TSaveDialog.

TSaveDialog может быть сконфигурирован для удовлетворения ваших потребностей. При его использовании вы будете проходить через следующие шаги:

Создание объекта диалога

Вы определяете переменную TSaveDialog, затем присваиваете ей новый объект TSaveDialog:

var
saveDialog : TSaveDialog;
begin
saveDialog := TSaveDialog.Create(self);

Обратите внимание, что диалог должен иметь хозяина, в данном примере текущий объект мы снабжаем - self - как самостоятельный.

Установка опций
Перед отображением диалога, вы, вероятно, конфигурируете его по своим потребностям, устанавливая свойства диалога. Вот его основные свойства:

Свойство Title
Используется для установки заголовка диалога.

Свойство FileName
Выдает имя файла, заданное по умолчанию для сохранения. (Иначе, поле имени файла будет пробелом).

Свойство DefaultExt
Определяет расширение, которое будет добавляться к пользовательскому имени файла, если оно печатается вручную (а не выбирается из списка файлов). Если этих фильтров расширений два или больше, то это значение игнорируется. Они должны быть помещены в раскрывающийся список значений расширения. Очень странно!

Свойство Filter
Оно позволяет отображать и выбирать только некоторые типы файлов. Текст фильтра отображается в ниспадающем поле, чуть ниже поля имени файла. Следующий пример выбирает только текстовые файлы:

saveDialog.Filter := 'Text files only|*.txt';

Раскрывающийся список показывает текст, находящийся перед разделителем |. После разделителя вы определяете маску, которая выбирает файлы, которые вы хотите.

saveDialog.Filter := 'Text files|*.txt|Word files|*.doc';

Выше мы разрешили отображать текстовые и Word файлы как два отдельных пункта в раскрывающемся списке.

Свойство FilterIndex
Определяет, какой фильтр ниспадающего поля будет отображен первым.

Свойство InitialDir
Устанавливает начальный каталог в диалоге.

Отображение диалога
Теперь мы вызываем метод TSaveDialog:

if saveDialog.Execute
then ...

Execute возвратит истину, если пользователь выбрал файл и нажал OK. Теперь вы можете использовать выбранный файл:

Окончание диалога

Выбранный файл получает в использование следующее свойство: Свойство FileName

Оно содержит полный путь плюс имя выбранного файла. Наконец, мы должны освободить объект диалога:

saveDialog.free;

Пример кода

var
saveDialog : TSaveDialog;    // Переменная диалога сохранения
begin
// Создание объекта диалога сохранения - назначая его нашей переменной диалога сохранения
saveDialog := TSaveDialog.Create(self);

// Give the dialog a title
saveDialog.Title := 'Save your text or word file';

// Установка начального каталога
saveDialog.InitialDir := GetCurrentDir;

// Разрешаем сохранять файлы типа .txt и .doc
saveDialog.Filter := 'Text file|*.txt|Word file|*.doc';

// Установка расширения по умолчанию
saveDialog.DefaultExt := 'txt';

// Выбор текстовых файлов как стартовый тип фильтра
saveDialog.FilterIndex := 1;

// Отображение диалог сохранения файла
if saveDialog.Execute
then ShowMessage('File : '+saveDialog.FileName)
else ShowMessage('Save file was cancelled');

// Освобождения диалога
saveDialog.Free;
end;

Диалог сохранения файла отобразится с выбором двух ниспадающих типов фильтров:

Delphi проектируют файлы

Delphi файлы Паскаля - это отображено в начале

Диалог установлен в текущий каталог (из которого было запущено приложение).

Если
Вы выбрали файл 'Unit1.pas' то в диалоге ShowMessage отобразится:

Файл: File : C:\Program Files\Borland\Delphi7\Projects\Unit1.pas

Примечание

Это ваша ответственность проверить, выбрал ли пользователь существующий файл, чтобы спросить пользователя, будет ли файл заменён.

 

Авторизация



Счетчики