Delphi. Учимся на примерах | страница 18
>begin
> Image1.Hide; //прячем рисунок
>end;
Единственное, чего не достает этой программе, — это возможность открывать с ее помощью рисунки в файл-менеджерах. Реализуем эту возможность, добавив следующий код в обработчик события OnCreate главной фoрмы.
>procedure TForm1.FormCreate(Sender: TObject);
>var
> Str:String; //путь к файлу, который поступил как параметр
> i:Integer;
>begin
> if (ParamCount > 0)
> then //если на вход программы поступил параметр
> begin
> //составляем путь к файлу по символам
> Str:= ParamStr(1);
> for i:= 2 to ParamCount do Str:= Str + ' ' + ParamStr(i);
> Image1.Picture.LoadFromFile(str); //загружаем рисунок
> Image1.Show; //показываем рисунок
> end;
>end;
При создании формы выполняется проверка: запускается ли программа с параметрами. Если на вход поступили параметры, то определяем путь к рисунку и отображаем его на форме. Программа просмотра рисунков в действии представлена на рис. 6.4.
Рис. 6.4. Программа просмотра рисунков в действии
Полный исходный код модуля
Полный исходный код модуля программы просмотра рисунков представлен в листинге 6.1.
>unit Unit1;
>interface
>uses
> Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, ExtCtrls;
>type TForm1 = class(TForm)
> Image1: TImage;
> MainMenu1: TMainMenu;
> N1: TMenuItem;
> N2: TMenuItem;
> N3: TMenuItem;
> N4: TMenuItem;
> N5: TMenuItem;
> N6: TMenuItem;
> N7: TMenuItem;
> Open1: TOpenDialog;
> Save1: TSaveDialog;
> procedure FormCreate(Sender: TObject);
> procedure N2Click(Sender: TObject);
> procedure N3Click(Sender: TObject);
> procedure N5Click(Sender: TObject);
> procedure N7Click(Sender: TObject);
>private
> { Private declarations }
>public
> { Public declarations }
>end;
>var
> Form1: TForm1;
>implementation
>{$R *.dfm}
>procedure TForm1.FormCreate(Sender: TObject);
>var
> Str: String; //путь к файлу, который поступил как параметр
> i:Integer;
>begin
> if (ParamCount > 0)
> then //если на вход программы поступил параметр
> begin
> //составляем путь к файлу по символам
> Str:= ParamStr(1) ;
> for i:=2 to ParamCount do Str:= Str + ' ' + ParamStr(i);
> Image1.Picture.LoadFromFile(str); //загружаем рисунок
> Image1.Show; //показываем рисунок
> end;
>end;
>procedure TForm1.N2Click (Sender: TObject);
>begin
> //начинаем обзор с текущей папки
> Open1.InitialDir:= GetCurrentDir;
> //открываем диалоговое окно выбора файла
> if Open1.Execute then begin
> //загружаем выбранный рисунок
> Image1.Picture.LoadFromFile(Open1.FileName);