Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Примеры и задачи.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
3.66 Mб
Скачать

Interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls;

type

TForml = class(TForm)

Timer: TTimer;

Buttonl: TButton;

procedure FormCreate(Sender: TObject);

procedure TimerTimer(Sender: TObject);

procedure ButtonlClick(Sender: TObject); private

{ Private declarations } public

( Public declarations } end;

var

Forml: TForml;

implementation

{$R *.dfm}

($R hbaner.res} // файл ресурсов, в котором

// находится битовый образ, можно создать

// при помощи Image Editor

I Высота битового образа в файле ресурсов не может быть меньше 32 пикселов }

const

WB = 350; // ширина области вывода

// картинки на форме

ТР = 573; // период рисунка бегущей строки

var

pic :TBitMap; // картинка — бегущая строка

sRect,dRect: TRect; // область-источник и область-приемник

t : integer;

Procedure TForml.FormCreate(Sender: TObject); begin

pic := TBitMap.Create;

pic.LoadFromResourceName(HInstance, 'BANER21); // загрузить

// картинку

dRect := Bounds(0,0,WB,pic.Height); // область, в которой

// бежит строка,

102

Часть 1

Примеры и задачи

103

sRect := Rect(0,0,TP,pic.Height); // отображаемая в данный

// момент область

t:=0;

end;

// сигнал от таймера

procedure TForml.TimerTimer(Sender: TObject);

begin

Canvas.CopyRect(dRect,pic.Canvas,sRect); // отобразить

// картинки

inc(t) ;

if t = TP // длина ролика

then t:=0;

sRect := Bounds(t,0,WB,pic.Height); // следующий кадр end;

// щелчок на кнопке OK

procedure TForml.ButtonlClick(Sender: TObject);

begin

Forml.Close; end;

end.

40. Напишите программу, используя которую можно просмС реть иллюстрации, находящиеся в одном из каталогов компь| тера. Вид окна программы приведен на рис. 1.40.

{ Просмотр иллюстраций } unit shpic_;

Interface

uses

Windows, Messages, SysOtils, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls, Menus;

type

TForml = class(TForm)

Imagel: TImage; // поле вывода иллюстрации

Buttonl: TButton; // кнопка Дальше

Labell: TLabel;

Editl: TEdit;

RadioButtonl: TRadioButton; // выбор: BMP - формат

RadioButton2: TRadioButton; // выбор: JPC - формат

Рис. 1.40. Окно программы Просмотр иллюстраций

GroupBoxl: TGroupBox;

procedure ButtonlClick(Sender: TObject);

procedure EditlKeyPress(Sender: TObject; var Key: Char);

procedure FormCreate(Sender: TObject);

procedure RadioButtonlClick(Sender: TObject);

procedure RadioButton2Click(Sender: TObject);

// эти объявления вставлены сюда вручную

procedure FirstPicture; // выводит первую иллюстрацию procedure NextPicture; // выводит следующую иллюстрацию procedure Scalelmage; // масштабирует картинку

private

{ Private declarations ) public

I Public declarations j end;

var

Forml: TForml; iw,ih: integer; // первоначальный размер //компонента Image