- •Задание.............................................................................................................................9
- •Задание............................................................................................................................11
- •2. Тема: Объектно-ориентированное программирование. Разработка класса – наследника стандартного класса Delphi
- •2.1 Задание
- •2.2 Описание одного из стандартных классов Delphi tCheckBox
- •2.3 Текст программы
- •3.3 Таблицы каскадных стилей
- •3.4 Программа работы с xml - документом
- •4. Тема: Объектно-ориентированное программирование. Разработка базового и производных классов. Обработка исключительных ситуаций. Запись экземпляров классов в документ xml
- •4.1 Задание
- •4.2 Описание иерархии и содержимого классов
- •4.3 Текст программы
- •4.4 Пример работы программы
- •4.5 Исходный файл и файл результатов
2. Тема: Объектно-ориентированное программирование. Разработка класса – наследника стандартного класса Delphi
2.1 Задание
Описать стандартный класс TCheckBox. Разработать новый класс-наследник с надписью случайного цвета, содержащей случайные символы.
2.2 Описание одного из стандартных классов Delphi tCheckBox
Компонент Delphi CheckBox это флажок - независимый переключатель. Флажок Delphi CheckBox используется в программе для визуализации состояний включено-выключено. Каждый щелчок мышкой по компоненту Delphi CheckBox меняет его состояние на противоположное. Смена состояния переключателя также доступна и в программе.
Delphi CheckBox представляет собой сочетание небольшого окошка, которое и визуализирует наличием или отсутствием "галочки" состояние компонента, и компонента Label - заголовка, поясняющего назначение переключателя.
Основное свойство компонента CheckBox - Checked типа Boolean.
Главным образом, компонент Delphi CheckBox применяется в условных операторах, и помогает сформировать условия выбора того или иного действия в программе.
Компонент Delphi CheckBox - независимый переключатель, то есть в группе из нескольких компонентов каждый из них может быть установлен в произвольное состояние, независимое от состояния остальных компонентов группы (в отличие от компонента Radiobutton).
Помимо свойства Checked, позволяющего управлять состоянием компонента, у Delphi CheckBox есть свойство State (состояние), которое может иметь уже три значения. Первые два значения cbChecked ("отмечено") и cbUnChecked ("не отмечено"), а третье - cbGrayed ("не определено" или "не знаю") становится доступным для выбора если установить в True свойство AllowGrayed компонента.
Расположением текста в компоненте Delphi CheckBox также можно управлять. Для этой цели служит свойство Alignment.
2.3 Текст программы
Текст программы приведен в листинге 2.1 и 2.2
Листинг 2.1. Unit1.pas
|
|
unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Unit2;
type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); private { Private declarations } public { Public declarations } end;
var Form1: TForm1;
implementation var CB:TMyCheckBox; {$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin CB:=TMyCheckBox.Create(nil); CB.Parent:=Form1; CB.Push(); end;
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean); begin CB.Free;
end;
end. |
Листинг 2.2. Unit2.pas
|
|
unit Unit2;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;
type TMyCheckBox= class (TCheckBox) Procedure Push(); end;
implementation
Procedure TMyCheckBox.Push(); var t:string; i: Integer; begin case (random(6)+1) of 1: Color:=clblue; 2: Color:=clred; 3: Color:=clgray; 4: Color:=clgreen; 5: Color:=clwhite; 6: Color:=clyellow; end; t:=''; for i := 1 to (random(10)+5) do t:=t+chr(random(1000)); Caption:=t;
end;
end. |
2.4 Пример работы программы
Пример работы приведен на рисунке 2.1 и 2.2.

Рисунок 2.1.Пример работы Рисунок 2.2. Пример работы
3. Тема: Расширяемый язык разметки XML
3.1 Задание
1. Разработать документ XML с информацией о ВУЗах. Предусмотреть в документе не менее пяти примеров заданной информации (узлов).
2. Разработать не менее двух таблиц каскадных стилей для отображения документа в Microsoft Internet Explorer.
3. Разработать программу на языке Delphi для просмотра документа и добавления новых узлов.
3.2 Содержание разработанного документа на языке XML
Документ XML приведен в листинге 3.1.
Листинг 3.1. XML документ.
|
|
<?xml version="1.0" encoding="windows-1251"?> <?xml-stylesheet type="text/css" href="style.css"?> <univlist> <univ> <name>СПб</name> <date>1980</date> <studq>11000</studq> <specq>10</specq> </univ> <univ> <name>СПб</name> <date>1980</date> <studq>11000</studq> <specq>10</specq> </univ> <univ> <name>СПб</name> <date>1980</date> <studq>11000</studq> <specq>10</specq> </univ> <univ> <name>СПб</name> <date>1980</date> <studq>11000</studq> <specq>10</specq> </univ> <univ> <name>СПб</name> <date>1980</date> <studq>11000</studq> <specq>10</specq> </univ> <univ> <name>СПб</name> <date>1980</date> <studq>11000</studq> <specq>10</specq> </univ> <univ> <name>СПб</name> <date>1980</date> <studq>11000</studq> <specq>10</specq> </univ> <univ> <name>СПб</name> <date>1980</date> <studq>11000</studq> <specq>10</specq> </univ> <univ> <name>СПб</name> <date>1980</date> <studq>11000</studq> <specq>10</specq> </univ> <univ> <name>СПб</name> <date>1980</date> <studq>11000</studq> <specq>10</specq> </univ> <univ> <name>СПбUE</name> <date>1980</date> <studq>11000</studq> <specq>10</specq> </univ> <univ> <name>000</name> <date>1980</date> <studq>11000</studq> <specq>10</specq> </univ> </univlist> |
Пример отображения документа в браузере Firefox приведен на рисунке 3.1.

Рисунок 3.1. Отображение XML документа
