- •Задание:
- •Структурная схема приложения:
- •Функциональная схема приложения
- •Структура интерфейса окна
- •Используемые компоненты.
- •Главное окно
- •Подсказки
- •О программе
- •Настройка цвета шрифта
- •Настройки иконки
- •Настройки шрифта
- •Вставка специального символа
- •Инструкция для пользователей текстового редактора
- •Данная функция доступна только если выделен какой-то фрагмент текста!
Структура интерфейса окна
Заставка
Главное окно
Форма настройки цвета текста
Форма настройки подсказок
Форма отображения статистики (диаграмма)
Форма «Об авторе»
Форма настройки формата даты и времени
Форма «О программе»
Форма настройки иконки
Форма настройки шрифта
Форма вставки специального символа
Используемые компоненты.
Form-контейнер для компонентов. Предназначен для расположения на нем объектов, является «родителем» для всех остальных объектов.
OnClose - наступает при закрытии формы.
Oncreate- возникает при формировании окна экранной формы и его компонентов в оперативной памяти до ее появления на экране
OnShow - возникает, когда форма отображается (то есть когда ее свойство Visible принимает значение True)
ActionList - хранит список действий, которые могут быть использованы компонентами и элементы управления, такими как пункты меню и
Button – представляет собой стандартную кнопку Windows, инициирующую какое-то действие.
OnClick – возникает по нажатию кнопки.
OnKeyPress – событие активизируется , когда пользователь нажимает клавишу на клавиатуре(Нажал-отпустил).
Popupenu-вспомогательное меню. Появляется в виде отдельного окна после нажатия правой кнопкой мыши.
onPopup –событие активизируется непосредственно перед появлением контекстного меню
Menuitem- пункты меню.
OnExecute- возникает в момент, когда пользователь инициализировал действие, например, щелкнув на компоненте
Label-метка. Используется для размещения в окне не очень длинных однострочных надписей, не редактируемых пользователем.
MainMenu предназначен для добавления к программе главного меню
GroupBox- контейнер с надписью, объединяет связанные по смыслу объекты. Служит для дизайна приложения, делая его уникальным и выделяет отдельные части окна рамкой.
ListBox-список выбора – содержит список прилагаемых вариантов и дает возможность проконтролировать текущий выбор.
onDblCLick - событие, возникающее при двойном нажатии кнопки мыши
OnKeyDown - событие активизируется , когда пользователь нажимает клавишу на клавиатуре ( нажал и все)
BitBtn-командная кнопка, имеющая растровое изображение. Используется для выполнения выбранной команды пользователем.
OnCLick- событие, возникающее при нажатии кнопки мыши
SpinEdit-редактор числа. Обеспечивает отображение и редактирование размера шрифта с возможностью его редактирования двойной кнопки.
onChange - возникает при изменении основных свойств компонентов.
Bevel-кромка. Служит для выделения отдельных частей окна рамкой.
DrawGrid- таблица, ячейки которого могут содержать как рисунки, так и надписи. Особенностью этого компонента является то, что все данные хранятся на его Canvas
OnDrawCell – событие возникает при выводе(прорисовке ) ячейки. Процедура имеет параметры: Rect -область вывода(в пределах одной ячейки), Acol -прорисованный столбец, Arow - прорисованная строка.
onSelectCell- возникает при выборе ячейки(данный ячейка получает фокус, равный true)
Canvas- особый метод ввода информации , позволяющий выводить картинки и текстовые надписи.
ComboBox-комбинированный список выбора. Представляет собой комбинацию списка выбора и текстового редактора. Используется для выбора шрифта из списка.
Timer- таймер. Это компонент используется для отсчета интервалов реального времени.
OnTimer-Возникает через определенные интервалы времени.
ColorGrid- компонент предназначен для выбора и/или отображения цветов из 16-цветной палитры.
OnChange- возникает при изменении основных свойств компонентов.
MaskEdit- однострочный редактор, представляет собой поле для ввода информации в котором возможно отображение и изменение текста по указанной маске.
OnChange - возникает при изменении основного свойства объекта
Panel- контейнер на котором можно размещать другие элементы управление
onDblCLick- событие, возникающее при двойном нажатии кнопки мыши
ScrollBar- полоса прокрутки, используется для выбора и задания значений в некотором диапазоне целочисленного типа
OnChange- возникает при изменении основного свойства объекта.
UpDown- счетчик увеличивает или уменьшает числовое значение на одну и ту же величину.
onClick- возникает при нажатии кнопки манипулятора
StringGrid-текстовая таблица, позволяет отображать и хранить (текстовую информацию) в виде строк и столбцов.
OnDrawCell – возникает при прорисовке любой ячейки.
OpenDialog – компонент реализует диалог открытия файла.
SaveDialog –компонент реализует диалог сохранения файла.
Region
CreatePolyPolygonRgn-Создаёт регион, состоящий из серии полигонов, задаваемых массивом точек , число вершин каждого из которых указывается в массиве с общим числом вершин и режимом заливки
Результат работы программы.
unit Unit4; (заставка)
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, jpeg, ExtCtrls, ComCtrls, XPMan;
type
TForm4 = class(TForm)
Image1: TImage;
Timer1: TTimer;
ProgressBar1: TProgressBar;
XPManifest1: TXPManifest;
procedure Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure FormCreate(Sender: TObject);
procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form4: TForm4;
MyRegion: HRGN;
implementation
uses Unit1;
{$R *.dfm}
procedure TForm4.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
Caption:='x=' +InttoStr(x)+' y='+inttostr(y);
end;
procedure TForm4.FormCreate(Sender: TObject);
var
P:array[0..12] of TPoint;
k:array[0..1] of integer;
MyRegion: HRGN;
begin
P[0]:= Point(60,60);
P[1]:=Point(143,145);
P[2]:=Point(185,75);
P[3]:=Point(347,127);
P[4]:= Point(225, 365);
P[5]:=Point(44,283);
P[6]:=Point(118,173);
P[7]:=Point(20,70);
P[8]:=Point(45,47);
p[9]:=point(55,405);
p[10]:=point(315,405);
p[11]:=point(315,440);
p[12]:=point(55,440);
k[0]:=9;
k[1]:=4;
MyRegion:=CreatepolyPolygonRgn(P,k,2,ALTERNATE);
SetWindowRgn(Handle,MyRegion,true);
end;
procedure TForm4.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
Caption:='x=' +InttoStr(x)+' y='+inttostr(y);
end;
procedure TForm4.Timer1Timer(Sender: TObject);
begin
tag:=tag+1;
ProgressBar1.Position:=ProgressBar1.Position+20;
if tag=5 then
begin
Timer1.Enabled:=false;
form4.hide;
form1.show;
end;
end;
end.
