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

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 документа