ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 30.11.2023
Просмотров: 64
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
. Затем он переходит в список «Название величины» и выбирает соответствующее название выбранной физической величины. Если выбрано правильное название величины, то под словом «Оценка» появляется одобрительная реплика «Правильно», если неправильное слово, то — «Ошибка». Правильные названия ищутся до тех пор, пока не будет получено соответствие всех физических величин и их названий.
Пояснение. Новым в этой работе является обеспечение взаимодействия двух списков ListBox на основе свойств Items и ItemIndex и создание многострочных надписей в объекте Label.
План разработки программы
Для вывода многострочных надписей в объектах Label выполните следующие действия:
3. Установить кнопку выхода из программы и выполнить следующие действия:
Сохранить код программы и проект под именами, например, unitS.pas и prS.dpr.
Запустить программу, затем закрыть окно проекта, щелкнув на кнопке «Выход».
Выделить объект ListBoxl, справа от свойства Items щелкнуть на кнопке с тремя точками. В появившемся окне встроенного редактора ввести физические величины, каждую на новой строке: «Ватт», «Ом», «Вольт», «Ампер».
Сохранить набранный текст под именем fizl.txt. Для этого щелкнуть правой кнопкой мыши и выбрать режим Save. Для выхода из встроенного редактора щелкнуть на кнопке ОК.
7. Выделить объект Listbox2 и проделать с ним аналогичную работу, введя названия физических величин: «Напряжение», «Сопротивление», «Сила тока», «Мощность».
Сохранить набранный текст под именем fiz2.txt.
8. Выполнить следующие действия:
В разделе 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,);
Листинг программы
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 (набор панелей с вкладками).
План разработки программы
3. Создать форму «Меню».
3.1. Командой File New Form создать новую форму.
Выполнить следующие действия:
18>
Пояснение. Новым в этой работе является обеспечение взаимодействия двух списков ListBox на основе свойств Items и ItemIndex и создание многострочных надписей в объекте Label.
План разработки программы
-
Открыть новый проект.
-
Разместить на форме объекты в соответствии с рис. и присвоить заголовки меткам. Обратить внимание, что заголовки меток «Физическая величина» и «Название величины» состоят из двух строк и отцентрированы.
Для вывода многострочных надписей в объектах 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,);
-
Увеличить количество физических величин до 10. -
Вывести сообщение о количестве правильных ответов и оценке за тест.
Листинг программы
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 (набор панелей с вкладками).
План разработки программы
-
Открыть новый проект. -
Создать титульную форму.
-
Дать название форме«Тест по географии». Разместить на форме метки в соответствии с рис. и присвоить им заголовки. -
Разместить на форме объект Image (графический объект), который находится на вкладке Additional палитры компонентов. Выделить Image, справа от свойства Picture щелкнуть на кнопке с тремя точками. В появившемся окне встроенного редактора Picture Editor щелкнуть на кнопке Load, которая вызывает открытие окна для установки имени графического файла. Выбранная картинка появится вначале в служебном окне, и если пользователь подтвердит (кнопка ОК), то она возникнет и в окне формы.
-
Разместить на форме кнопку «Выход» и дать ей значение Close. -
Разместить на форме кнопку «Продолжить». Пока не задавать действия, которые будут выполняться по нажатию этой кнопки. -
Сохранить форму под именем, например, F_Titul.pas и проект — под именем Pr_Test.dpr
3. Создать форму «Меню».
3.1. Командой File New Form создать новую форму.
Выполнить следующие действия:
Выделенный объект | Вкладка окна Object Inspector | Имя свойства | Действие |
Form | Properties | Caption | Установка заголовка формы: «Меню» |
Name | Установка имени формы: U_Menu, под которым компонент будет известен программе |
18>