Отправляет email-рассылки с помощью сервиса Sendsay

Delphi. Уроки

  Все выпуски  

Delphi. Уроки


Информационный Канал Subscribe.Ru


Delphi. Библиотека VCL. Уроки по программированию с сайта http://progs.biz

Рассылка №13

Delphi. VCL. Урок 23. Стандартный диалог для открытия файл.
Delphi. VCL. Урок 24. Стандартный диалог для сохранения файла.
Delphi. VCL. Урок 25. Стандартный диалог для выбора цвета.

Полные версии уроков (с картинками) можно найти по адресам
Урок 23. Стандартный диалог для открытия файл.
Урок 24. Стандартный диалог для сохранения файла.
Урок 25. Стандартный диалог для выбора цвета.

Изучаем Delphi. Библиотека VCL. Урок 23. Стандартный диалог для открытия файла

Для добавления в программу стандартного диалога для открытия файла добавьте на форму компонент OpenDialog с вкладки Палитры компонентов.

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

Для того, чтобы при нажатии на кнопку диалоговое окно появилось, добавьте в ее обработчик следующий код:

procedure TForm1.Button1Click(Sender: TObject);
begin
  OpenDialog1.Execute;
end;

Разумеется, для работы с файлом не достаточно только вызвать наше диалоговой окно. Необходимо еще извлечь из него имя выбранного файла. Вот как это делается (в приведенном примере содержимое выбранного пользователем текстового файла показывается в компоненте Memo1 типа TMemo, который надо разместить на форме):

  ...
  if OpenDialog1.Execute then
    Memo1.Lines.LoadFromFile(OpenDialog1.FileName);
  ...

Таким образом для извлечения файла мы используем свойство FileName нашего диалога.

Обратите внимание, что с помощью if мы проверяем, выбрал ли пользователь вообще что-нибудь. Если пользователь ничего не выбрал, то OpenDialog1.Execute возвращает false, и последующий код не выполняется.

Вот еще несколько полезных свойств для нашего диалога для открытия файлов.

Для открытия в диалоге заранее определенной папки используем свойство InitialDir:

  ...
  OpenDialog1.InitialDir:='D:\';
  if OpenDialog1.Execute then

Для создания фильтров используем свойство Filter. При использовании фильтров пользователю будут показываться не все файлы, а только определенные фильтром. Фильтр можно задавать как в редакторе фильтров, так и в тексте программы на этапе выполнения. Для задания фильтра в редакторе фильтров нажмите накнопку с многоточием свойства Filter.

Затем просто запольните левый и правый столбцы. Левый определяет, что за надпись увидит пользователь, а правый - что за файлы будут показываеться.

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

Свойство FilterIndex диалогового окна определяет номер активного фильтра (т. е. того, который будет выбран при вызове диалога). Нумерация при этом начинается с единицы.

А вот так можно задать несколько фильтров в тексте программы:

  ...
  OpenDialog1.Filter:='Текстовые файлы|*.txt; *.ini|Временные файлы|*.tmp';
  ...

Параметры тут разделяются на пары Описание-Фильтр. В качестве разделителя используем |.

Наверх

Изучаем Delphi. Библиотека VCL. Урок 24. Стандартный диалог для сохранения файла

На прошлом уроке мы рассмотрели стандартный диалог для открытия файла. Вполне естественно после него рассмореть диалог для сохранения файла. Вот так выглядит соответствующий компронент на вкладке Dialogs Палитры компонентов.

Принципиально диалог для сохранения файла почти не отличается от диалога для открытия файла. Свойства FileName, InitialDir, Filter, FilterIndex и другие используются точно также, как и в диалоге для открытия файла. Вот пример для сохранения содержимого Memo1 в файле, имя которого задает пользователь:

  ...
  SaveDialog1.Execute;
  Memo1.Lines.SaveToFile(SaveDialog1.FileName);
  ...

Из свойств, применяемых более для сохранения файла, отметим DefaultExt. Оно определяет расширение, автоматически прибавляемое к сохраняемому файлу. Это свойство можно задать в окне Инспектора объектов на этапе разработки программы. А вот пример его задания в прямо в коде:

  ...
  SaveDialog1.DefaultExt:='123';
  ...

После этого к имени введенного пользователем файла автоматически прибавится расширение .123.

Наверх

Изучаем Delphi. Библиотека VCL. Урок 25. Стандартный диалог для выбора цвета

На этом уроке мы с вами рассмотрим очередной стандартный диалог - а именно диалог для выбора цвета. Наша программа будет делать следующее - при нажатии на кнопку будет появляться стандартный диалог для выбора цвета. После того, как пользователь выберет некоторый цвет и закроет диалог, при щелчке на форме именно таким цветом будет рисоваться прямоугольник. Кроме того, мы посмотрим, как задавать некоторый набор цветов (т. н. пользовательские цвета) для нашего диалога.

Нужный нам компонент находится, разумеется, на вкладке Dialogs палитры компонентов.

Перенесите его на форму. Кроме того разместите на форме стандартную кнопку. Имена компонентов можете оставить без изменения - сейчас это не принципиально.

В обработчике для события Click на кнопке напишите следующий код:

procedure TForm1.Button1Click(Sender: TObject);
begin
  //Показываем диалог
  ColorDialog1.Execute;
  //Цвет кисти для фона берем из дилога
  Form1.Canvas.Brush.Color:=ColorDialog1.Color;
  //Перерисовываем окно
  Invalidate
end;

Этот код отвечает за показ нашего диалогового окна.

Далее пишем код для рисования:

procedure TForm1.FormPaint(Sender: TObject);
begin
  //Рисуем прямоугольник
  Form1.Canvas.Rectangle(10, 10, 40, 40);
end;

Запускаем программу. При щелчке на кнопке появится диалоговое окно для задания цвета, который затем присвоится прямоугольнику.

Теперь посмотрим, как можно сразу задавать для нашего диалога пользовательские цвета. Делается это совсем просто - делаем двойной щелчок на компоненте для задания цвета на форме нашего диалога (заметьте, что это надо делать на этапе разработки).

Появится обычное диалоговое окно для задания цвета. Окно настоящее, так что прямо в нем и задайте нужные вам пользовательские цвета (нажав предварительно на кнопку "Define Custom Colors"). После этого просто задайте пользовательские цвета, как будто ваша программа запущена.

Все! Теперь после запуска программы и вызове диалогового окна в последнем будут определенные вами пользовательские цвета.

Наверх

Copyright Алексеев Игорь, 2002

Copyright сайт progs.biz, 2002


http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное