МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РЕСПУБЛИКИ КАЗАХСТАН

ПАВЛОДАРСКИЙ ТЕХНИКО-ЭКОНОМИЧЕСКИЙ КОЛЛЕДЖ

по выполнению контрольной работы

VI семестра по предмету:

«Основы объектно-ориентированного программирования»

для студентов заочного ОТДЕЛЕНИЯ

специальность 1304000 «Вычислительная техника и программное обеспечение»

Подготовил: преподаватель

спец. дисциплин ____________

г. Павлодар

20__ г.

ЗАДАНИЕ

1. Создать программу, состоящую из пяти окон, с возможностью последовательного перехода из одного окна в другое, вперед и назад. Данная программа должна выдавать справочную информацию об авторе в виде вопросов и ответов. Каждое окно программы должно быть посвящено определенному жизненному этапу.

2. Название и тематика окон следующая:

· «Титульный лист» (первая форма) – окно с краткой информацией об авторе программы (пример на рис.1). На форме расположить две кнопки: «Выход» и «Далее» (переход к следующей форме);

Рисунок 1. Окно заставки

· «Мое детство» (окно 2) – окно с цитатами, характеризующими детство (до 7 лет) (рис.2);

Рисунок 2.

· «Мое отрочество» (окно 3) – окно с цитатами, характеризующими отрочество (от 7 до 16 лет);

· «Моя юность» (окно 4) – окно с цитатами, характеризующими юность (от 16 до 23 лет);

· «Спасибо!» (окно 5) – окно с перечнем цитат, которые пользователь выдал в каждом из окон 2, 3, 4.

3. Каждое из окон 2, 3, 4 должно содержать те компоненты для выбора вопросов, которые указаны в варианте. Ответ на указанный вопрос для каждого окна может выдаваться в «Memo»-поле или в другой компонент.

НЕ нашли? Не то? Что вы ищете?

ВАРИАНТЫ КОНТРОЛЬНОЙ РАБОТЫ

Вариант

Компонент для выбора вопроса

Компонент для отображения списка заданных вопросов

Окно 2

Окно 3

Окно 4

Окно 5

1.

ListBox

ComboBox

RadioGroup

StringGrid

2.

ComboBox

RadioGroup

CheckListBox

StringGrid

3.

RadioGroup

CheckListBox

StringGrid

StringGrid

4.

CheckListBox

StringGrid

ListBox

StringGrid

5.

StringGrid

ListBox

ComboBox

StringGrid

6.

ComboBox

ListBox

RadioGroup

Memo

7.

RadioGroup

ComboBox

CheckListBox

Memo

8.

CheckListBox

RadioGroup

StringGrid

Memo

9.

StringGrid

CheckListBox

ListBox

Memo

10.

ListBox

StringGrid

ComboBox

Memo

11.

RadioGroup

ListBox

ComboBox

StringGrid

12.

CheckListBox

ComboBox

RadioGroup

StringGrid

13.

StringGrid

RadioGroup

CheckListBox

StringGrid

14.

ListBox

CheckListBox

StringGrid

StringGrid

15.

ComboBox

StringGrid

ListBox

StringGrid

16.

ListBox

RadioGroup

ComboBox

Memo

17.

ComboBox

CheckListBox

RadioGroup

Memo

18.

RadioGroup

StringGrid

CheckListBox

Memo

19.

CheckListBox

ListBox

StringGrid

Memo

20.

StringGrid

ComboBox

ListBox

Memo

Методические указания по выполнению контрольной работы:

Ход выполнения работы:

1. Необходимо создать пять форм. На каждой из форм поставить в соответствии со своим вариантом компонент и кнопки «Назад» и «Дальше».

2. Прописать код для кнопок «Назад» и «Дальше».

Код для кнопки «Дальше» (переход из первой формы на вторую)

Form2.show; //показать вторую форму

Код для кнопки «Назад» (на второй форме)

Form2.close; //закрыть вторую форму

3. Для всех остальных компонентов заполнить значения, например как на рисунке 2 для второй формы заполнен компонент ListBox (на каждой форме текст в соответствии с заданием – мое детство, мое отрочество, моя юность).

Компонент

Свойство, с помощью которого заносится текст

ListBox

Items

ComboBox

Items

RadioGroup

Items

CheckListBox

Items

StringGrid1

В обработчике события активации формы onActivate необходимо прописать следующий код:

stringGrid1.Cells[0,0]:=’первая цитата’;

stringGrid1.Cells[0,1]:=’вторая цитата’;

stringGrid1.Cells[0,2]:=’третья цитата’;

stringGrid1.Cells[0,3]:=’четвертая цитата’;

(вместо слов первая, вторая и т. д. цитата необходимо написать свой текст)

4. Написать код для пятой формы. Примерный код показан ниже, для формы с компонентом StringGrid.

unit Unit5;

interface

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

Grids, StdCtrls;

type

TForm5 = class(TForm)

Button1: TButton; // на форме кнопка Button1 – кнопка «Опрос»

StringGrid1: TStringGrid; //на форме компонент StringGrid

Button2: TButton; // на форме кнопка Button2 – кнопка «Назад»

Button3: TButton; // на форме кнопка Button3 – кнопка «Выход»

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure FormActivate(Sender: TObject);

procedure Button3Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form5: TForm5;

implementation

uses Unit2, Unit1, Unit3, Unit4; //связь с другими формами

{$R *.DFM}

var i:integer;

//процедура, выполняемая при активации формы

procedure TForm5.FormActivate(Sender: TObject);

begin

{выводим в первую строку значение из компонента ListBox1, расположенного на Form2, при условии, что выбран хоть один элемент ListBox1}

if Form2.Listbox1.Itemindex>=0

then StringGrid1.Cells[0,0]:='Моё детство: '+Form2.Listbox1.Items[Form2.Listbox1.Itemindex]

else StringGrid1.Cells[0,0]:='Моё детство: ';

//выводим во вторую строку значение из компонента ComboBox1, расположенного на Form3.

StringGrid1.Cells[0,1]:='Моё отрочество: '+ Form3.Combobox1.Items[Form3.Combobox1.Itemindex];

//выводим в третью строку значение из компонента RadioGroup1, расположенного на Form4.

StringGrid1.Cells[0,2]:='Моя юность '+Form4.RadioGroup1.Items[Form4.RadioGroup1.Itemindex];

end;

//кнопка Опрос

procedure TForm5.Button1Click(Sender: TObject);

begin

{ Возвращаемся к форме1 для возобновления опроса}

for i:=0 to StringGrid1.RowCount-1 do StringGrid1.Cells[0,i]:=''; //очищаем StringGrid1

StringGrid1.Row:=0;

Form5.Close; //закрываем 5-ю форму

Form4.Close; //закрываем 4-ю форму

Form3.Close; //закрываем 3-ю форму

Form2.Close; //закрываем 2-ю форму

end;

//Кнопка Выход

procedure TForm5.Button2Click(Sender: TObject);

begin

{Выходим из программы}

Application. Terminate;

end;

//Кнопка Назад

procedure TForm5.Button3Click(Sender: TObject);

begin

for i:=0 to StringGrid1.RowCount-1 do StringGrid1.Cells[0,i]:=''; //очищаем строки StrinGrid1

Form5.Close;//закрываем 5-ю форму

end;

end.

СПИСОК ЛИТЕРАТУРЫ

1. Delphi 5. Руководство программиста. – М.: “Нолидж”, 2001. – 880 с., ил.

2. Василий Кучеренко Тонкости программирования на Delphi. Серия книг “Кратко, доступно, просто” – М.: ”Познавательная книга плюс”, 2000. – 192 с.