Файл: Протокол 9 от 11. 05. 2012 г Омск 2012.doc

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 30.11.2023

Просмотров: 64

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
. Затем он переходит в список «Название величины» и выбирает соответствующее название выбранной физической величины. Если выбрано правильное название величины, то под словом «Оценка» появляется одобрительная реплика «Правильно», если неправильное слово, то — «Ошибка». Правильные названия ищутся до тех пор, пока не будет получено соответствие всех физических величин и их названий.

Пояснение. Новым в этой работе является обеспечение взаимодействия двух списков ListBox на основе свойств Items и ItemIndex и создание многострочных надписей в объекте Label.

План разработки программы

  1. Открыть новый проект.

  1. Разместить на форме объекты в соответствии с рис. и присвоить заголовки меткам. Обратить внимание, что заголовки меток «Физическая величина» и «Название величины» состоят из двух строк и отцентрированы.

Для вывода многострочных надписей в объектах Label выполните следующие действия:

Выделенный объект

Вкладка окна Object Inspector

Имя свойства

Действие

Label 1

Properties

AutoSize (изменение размера в зависимости от текста в Caption)

Wordwrap (разрыв строки)

Height Width

Alignment (выравнивание текста)

Установка значения False

Установка значения True

Установка подходящих размеров

Установка значения taCenter

3. Установить кнопку выхода из программы и выполнить следующие действия:

Выделенный объект

Вкладка окна Object Inspector

Имя свойства/имя события

Действие

BitBtnl

Properties

Caption

Установка заголовка кнопки: «Выход»

Kind

BkCancel

Events

BitBtnlClick

Close ;


Сохранить код программы и проект под именами, например, unitS.pas и prS.dpr.

Запустить программу, затем закрыть окно проекта, щелкнув на кнопке «Выход».

Выделить объект ListBoxl, справа от свойства Items щелкнуть на кнопке с тремя точками. В появившемся окне встроенного редактора ввести физические величины, каждую на новой строке: «Ватт», «Ом», «Вольт», «Ампер».

Сохранить набранный текст под именем fizl.txt. Для этого щелкнуть правой кнопкой мыши и выбрать режим Save. Для выхода из встроенного редактора щелкнуть на кнопке ОК.

7. Выделить объект Listbox2 и проделать с ним аналогичную работу, введя названия физических величин: «Напряжение», «Сопротивление», «Сила тока», «Мощность».

Сохранить набранный текст под именем fiz2.txt.

8. Выполнить следующие действия:

Выделенный объект

Вкладка окна Object Inspector

Имя события

Действие

ListBoxl

Events

OnKeyPress

If key=#13 then Num1: =ListBoxl.ItemIndex ;

ListBox2

Events

OnKeyPress

If key=#13 then begin

case ListBox2 . ItemIndex of

0: Num2:= 2;

1: Num2:= 1;

2: Num2:= 3;

3: Num2:= 0;

end;

if Numl=Num2 then

begin

Label4.Caption: =' Правильно' ;

CountR: =CountR+1;

end

Else Label4.Caption:= 'Ошибка';

If CountR=5 then

ShowMessage (' Тест окончен')

В разделе Var переменные Num1, Num2 и CountRобъявить как целочисленные.

9. Сохранить проект, запустить и протестировать его.

Задание для самостоятельного выполнения

1. Списки

ListBoxl и ListBox2 сделать поочередно доступными после нажатия клавиши Enter.

Подсказка. Установить значение False свойства Enabled объекта ListBox2, а в процедуру KeyPressed, относящуюся к ListBoxl, включить строки:

ListBox2.Enabled := True; ListBoxl.Enabled := False; Forml.ActiveControl := ListBox2;

2. Внести изменения в программу, чтобы при правильном выборе назва­ния физической величины слово в левом списке исчезало.

Подсказка. В процедуру KeyPressed, относящуюся к ListBox2, включить:

ListBoxl.Items.Delete(Numl);ListBoxl.Items.Insert(Numl,);

  1. Увеличить количество физических величин до 10.

  2. Вывести сообщение о количестве правильных ответов и оценке за тест.

Листинг программы

unit Unit8; interface

private

{Private declarations) public

{Public declarations} end; var

Forml: TForml;

COUNTR, REZ, numl, num2:integer; implementation {$R *.DFM}

procedure TForml.BitBtnlClick(Sender: TObject); begin Close end;

procedure TForml.ListBoxlKeyPress(Sender: TObject; var Key: Char); begin If (Key=#13) and (Forml.ListBoxl.Items.Strings

[Forml.IListBoxl.Itemlndex]<>'') Then begin

numl:=forml.listboxl.itemindex; forml.ListBoxl.Enabled:=False; forml.ListBox2.Enabled:=True; forml.ActiveControl:=Listbox2 end end;

procedure TForml.ListBox2KeyPress(Sender: TObject; var Key: Char); begin

if key=#13 then begin case forml.ListBox2.Itemlndex of 0: num2:=2; 1: num2:=4; 2: num2:=7; 3: num2:=0; 4: num2:=3; 5: num2:=1; 6: num2:=6; 7: num2:=8; 8: num2:=5; 9: num2:=9; end;

if numl=num2 then begin forml.Label4.Caption:='Верно!'; REZ:=REZ+1 end

else forml.Label4.Caption:='Ошибка!'; COUNTR:=COUNTR+1 forml.ListBoxl.Items.Delete(numl);

forml.ListBoxl.Items.Insert(numl,'');

if c=10 then showmessage('Тест окончен. Оценка:'+

inttostr (REZ div 2 + ord(REZ div 2<1))+' (правильных ответов:' +inttostr (REZ)+')') ;

forml.ListBoxl.Enabled:=0;

foral.ListBox2.Enabled:=0;

forml.ActiveControl:=listboxl end end;

procedure TForml.BitBtn2Click(Sender: TObject); begin COUNTR:=0; REZ:=0; numl:= -1; num2:= -1;

forml.ListBoxl.Items.LoadFromFile('fizl.txt');

end;

end.
П рактическая работа 6 Разработка проекта «Тест по географии»

Постановка задачи

Создать проект, состоящий из нескольких форм: титульной формы, формы меню, формы помощи и формы непосредственно теста. В зависимости от пра­вильности ответов на тест, который состоит из нескольких разделов (в свою очередь в разделе может быть несколько вопросов), подсчитывается результат и выставляется оценка по каждому разделу.


Пояснение. Новым в этой работе является использование в проекте нескольких форм и организация вызова этих форм, использование шаблона формы Tabbed pages из окна New Items вкладки Forms, новых компонент глав­ного меню, многострочного текстового редактора, которые находятся на вкладке палитры компонентов Standard, компонента Image (графический объект) со вкладки Additional палитры компонентов и компонента PageControl (набор панелей с вкладками).


План разработки программы

  1. Открыть новый проект.

  2. Создать титульную форму.

  1. Дать название форме«Тест по географии». Разместить на форме метки в соответствии с рис. и присвоить им заголовки.

  2. Разместить на форме объект Image (графический объект), который находится на вкладке Additional палитры компонентов. Выделить Image, справа от свойства Picture щелкнуть на кнопке с тремя точками. В появившемся окне встроенного редактора Picture Editor щелкнуть на кнопке Load, которая вызывает открытие окна для установки имени графического файла. Выбранная картинка появится вначале в служебном окне, и если пользователь подтвердит (кнопка ОК), то она возникнет и в окне формы.

  1. Разместить на форме кнопку «Выход» и дать ей значение Close.

  2. Разместить на форме кнопку «Продолжить». Пока не задавать действия, которые будут выполняться по нажатию этой кнопки.

  3. Сохранить форму под именем, например, F_Titul.pas и проект — под именем Pr_Test.dpr

3. Создать форму «Меню».

3.1. Командой File New Form создать новую форму.

Выполнить следующие действия:

Выделенный объект

Вкладка окна Object Inspector

Имя свойства

Действие

Form

Properties

Caption

Установка заголовка формы: «Меню»

Name

Установка имени формы: U_Menu, под которым компонент будет известен программе

18>