Смекни!
smekni.com

Разработка лабораторного практикума Создание тестирующей программы

МОСКОВСКИЙГОСУДАРСТВЕННЫЙИНСТИТУТ СТАЛИИ СПЛАВОВ

(ТЕХНОЛОГИЧЕСКИЙУНИВЕРСИТЕТ)

НОВОТРОИЦКИЙФИЛИАЛ

кафедраэкономики иинформатики


ЗАДАНИЕНА КУРСОВУЮРАБОТУ


Студент__________________________________________________________

(Ф.И.О.,группа )

Темакурсовой работы(проекта): Разработкалабораторногопрактикума__

______ «Созданиетестирующейпрограммы» __

Сроксдачи курсовогопроекта_________________________________________


Переченьвопросов подлежащихисследованиюили разработке:

а)Актуальностьи значимостьтемы.

б)История развитияобучающих иконтролирующихпрограмм.

в)Обоснованиевыбора используемыхкомпонентов

г)Алгоритмыреализациипроектов.


Руководитель:_____________ ________________


2. РАЗРАБОТКАПРОГРАММЫ


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


Разработатьлабораторныйпрактикум потеме: «Созданиетестирующейпрограммы».Программадолжна содержатьзаставку сназваниемпроекта, и переченьвопросов свариантамиответов, изкоторых нужновыбрать правильный.По окончаниитестированиядолжен бытьвыдан результаттестирования.



2.2. Алгоритмреализацииработы


Лабораторныйпрактикумреализуетсяв десять этапов,в каждом из нихпроисходитусложнениезадачи.

На первомэтапе создаетсязаставка, содержащаяназвание тестирующейпрограммы. Вкачестве примерапроизводитсятестированиена знание программыMicrosoftExcelиз пакета программMicrosoftOffice2000.

Необходимосоздать проектдля запусказаставки тестирующейпрограммы,которая будетотображатьсяна экране 10 секунд(рис.1).

Для этогонеобходимозадать свойствакомпонентов(табл.2), и создатьпроцедурузавершенияпоказа заставкиTForm1.Timer1Timer(Приложение1).


Таблица 2

Свойства компонентов

Form1 Caption Приглашениек тестированию
WindowState максимальноеокно
Color clGreen
Image1 Picture вставкаиз файла, вкотором сохраненакопия экранаокна EXCEL
Label1 Caption Программатестированияпо пакетуMicrosoftEXCEL
WordWrap True
Font TimesNewRoman,20 p,полужирный,белый, выровненпо центру
Color clGreen
Timer1 Interval 5000
Events OnTimer– Close; (закрытиеформы)



Рис.1. Задание1, форма 1


На второмэтапе создаетсяпроект длязапуска вопросас вводом ответатестирующейпрограммы(Project2,Unit2.pas,Form2).Пример проектаприведен нарис.2.



Рис.2.Проект второгоэтапа


Таблица3

Свойствакомпонентов

Form2 Caption Вопросс вводом ответа
WindowState нормальноеокно
Color clInfoBk
Label1 Caption Текствопроса
WordWrap True
Font TimesNewRoman,16 p,полужирный,синий, выровненпо центру, набелом фоне
Edit1 Font TimesNew Roman, 16 p, красный
Button2 (Exit) процедуразакрытия формы
Button1 (OK) обработкавведенногоответа

Для этогонеобходимозадать свойствакомпонентов(табл.3), и создатьпроцедурупроверки правильностиответа на вопросTForm2.Button1Click(Приложение1).

На формепоказываетсявопрос, и в полеввода ожидаетсяответ. Послеввода ответапроисходитего передачав переменнуюS(блок 2), переводвсех букв вверхний регистр,и проверка этойпеременной(блок 3). Есливведенный ответсовпадает справильным,то происходитвывод сообщенияо правильностиответа (блок5), и закрытиеформы (блок 6).Иначе происходитвывод сообщенияо том, что ответневерен (блок4).

На форме такжеприсутствуеткнопка Exit,которая позволяетпрервать работупрограммы ивыйти в систему(кнопка выхода).

На третьемэтапе необходимосоздать проектдля запусказаставки, азатем через10 сек вопросас вводом ответа(Project3,Unit1.pas,Unit2.pas).Для этого необходимооткрыть первыйпроект, добавитьв него модульUnit2из проекта 2. Вкоде модуляUnit1необходимов разделе описаниямодулей добавитьвторой модуль(Unit2),а в процедуреTimer1Timerубрать командуClose,вместо которойнеобходимоотключитьтаймер, сделатьпервую формуневидимой, иактивизироватьвторую форму(Приложение1 и 2). А также вкоде модуляUnit2вместо Closeнеобходимоввести командуApplication.Terminate(блок 2).

На четвертомэтапе нужносоздать проектдля вопросас выбором ответаиз выпадающегосписка (Project4,Unit4.pas,Form4).Пример такойформы приведенна рис.3.

Необходимозадать такжесвойства компонентов(табл.4).

Таблица4

Свойствакомпонентов

ComboBox1 Text

Ответиз списка

Items Списокответов (например,Простой Вычисляемый Сравнивающий)
Button1 (OK) обработкавыбранногоответа



Рис.3.Вопрос с выборомответа из выпадающегосписка


В спискеварианты ответовзаранее заданы,поэтому необходимовыполнитьобычный выборнеобходимоответа. Выбранныйответ сравниваетсяс эталонным(Приложение2), и если он правильный,программазавершает своюработу (блок3).

На пятом этапенеобходимосоздать проектдля вопросас выбором одногоответа(Project5,Unit5.pas,Form5).Пример такогопроекта приведенна рис.4.



Рис.4. Вопрос свыбором ответа

Необходимозадать свойствакомпонентов,используемыхв этом проекте(табл.4).

Таблица4

Свойствакомпонентов

RadioButton1 Caption Первыйответ
RadioButton2 Caption Второйответ
RadioButton3 Caption Третийответ
RadioButton4 Caption Четвертыйответ
Button1 (OK) обработкавыбранногоответа

Правильныйответ находитсяв третьейрадиокнопке,поэтому привыборе ответа,и нажатии накнопку OK,происходитследующее:проверяется,какая радиокнопкабыла выбрана(Приложение2, рис.14, блок 2), иесли результатпроверки положителен,то происходитзавершениеработы приложения(блок 3).

На шестомэтапе нужносоздать проектдля вопросас выбором несколькихправильныхответов (Project6,Unit6.pas,Form6).Пример такогопроекта приведенна рис.5.



Рис.5. Вопрос снесколькимиответами

При выделенииправильныхответов, и нажатиикнопки OK,происходитобработкаответа (Приложение2). Если, при проверкиусловия, происходитсовпадение(рис.15, блок2), топриложениезавершает своюработу (блок3). Кнопка Exitпозволяет неотвечать навопрос, и прерватьвыполнениеэтого приложения,т.е. она работаетаналогичнокнопкам Exit,описанным выше.

На седьмомэтапе необходимосоздать проектдля вопросас выбором ответас помощью картинки (Project7,Unit7.pas,Form7).Пример такогопроекта приведенна рис.6.



Рис.6.Вопрос с картинкой


В этом случаена форму помещаютсякомпонентыCheckBox,а картинкасоздается влюбом графическомредакторе,например вAdobePhotoShop6.0.

Обработкаправильногоответа осуществляетсяаналогичнопредыдущемупроекту (Приложение2, рис.16). Проверяетсяусловие совпаденияответа (блок2), и в случаесовпаденияприложениезавершает своюработу (блок3).

На восьмомэтапе необходимодополнитьProject3новыми вопросами,представленнымив этапах 4-7. Сохранитьпроект предлагаетсяпод именемProject8.

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



Рис.7.Результаттестирования


Глобальныепеременные,необходимыедля подсчетаколичестваи процентаправильныхответов, необходимообъявить вспециальноммодуле UNIT0.pas.Этот модуль,не содержащийникакой формы, вставляетсяв проект покоманде FILENEWс выбором UNIT,а затем сохраняетсякак модульUNIT0.pas.В каждом модулев конструкцииUSES… нужно добавитьUNIT0(Приложение6).

При вычислениирезультатовтестированияиспользуетсямодуль Unit8,в котором вызываетсяпроцедураTForm8.FormActivate(Приложение2, рис.17).

Здесь происходитпреобразованиепеременныхи вывод их наформу. Во-первых,общее количествовопросов (блоки2 и 3), во-вторых,количествоправильныхответов (блоки4 и 5), и в-третьихподсчет процентаправильныхответов и выводего (блоки 6 и7).

Все остальныепроцедурыпостроеныаналогичнымобразом, согласноэтапам 3-7 (Приложение3).

На девятомэтапе необходимомодифицироватьпроект восьмогоэтапа (Project8),разработавпроцедуру вводаисходной информациио вопросах иответах изтекстовыхфайлов. Дляэтого нужносоздать пять(по количествувидов вопросов)текстовыхфайлов – 1.ТХТ,2.ТХТ, 3.ТХТ, 4.ТХТ,5.ТХТ.

Информациюв каждом файленабрать в виде:

Первая строка– текст вопроса

Вторая строка– номера правильныхответов

Третья, четвертая,пятая и шестаястроки – вариантыответов

Седьмая строка– вид вопроса(1 – 5).

В модуле UNIT0необходимонаписать процедуруввода из текстовогофайла (Приложение4, рис.23). Здесьсначала открываетсянеобходимыйтекстовый файл(блоки 2 и 3) ипеременной-счетчикуNSTRприсваиваетсязначение 1 (блок4). После этогопроизводитсяввод вопросаиз этого файла(блоки 5 и 6), потомчитается правильныйответ (блоки7 и 8). Далее считываютсяварианты ответов,которые помещаютсяв специальныймассив Otvet(блоки 9-11), и номер(вид) вопроса(блоки 12 и 13).

После этогофайл закрывается(блок 14) и процедуразавершает своюработу (блок15).

Для событияформы FORM2OnShowнеобходимозаписать операторывызова процедурыVVODи назначениятекста вопроса(Приложение4, рис.24). В этойпроцедурезадается имятестового файла1.txt(блок 2), и вызываетсяпроцедура VVODдля чтенияданных (блок3). Далее проверяетсяусловие совпадениявида вопроса(блок 4), и в положительномслучае на формувыводитсявопрос (блок5).

Также необходимоисправитьпроверку навведенный ответв обработкекнопки ОК (Приложение4, рис.25).


Сначалаобнуляютсяпеременныеколичестваправильныхответов, и общегоколичествавопросов. Потомсчитываетсяответ из поляввода (блок 2).В блоке 3 ответпроверяется,и при положительномрезультатепроверки выводитсясообщение, чтоответ был правильным(блок 5) и к счетчикуправильныхответов прибавляетсяединица (блок6). В противномслучае выводитсясообщение отом, что ответневерен (блок4).

Далее, пройденныйвопрос считается,с рабочегостола исчезаетформа 2 и выводитсяформа 4 (блок7). В случае нажатиякнопки ExitактивизируетсяпроцедураButton2Click(Приложение4, рис.26), котораязавершаетработу данногоприложения.

При появлениина рабочемстоле формы4 активизируетсяпроцедураFormShow(Приложение4, рис.27) в которойпроисходитаналогичнаяработа по вводуданных (блоки2 и 3), и обработканомера вопросадля вывода(блоки 4 и 5). Далеевыводятсявозможныеварианты ответовв компонентComboBox(блоки 6 и 7).

При ответена вопросактивизируетсяпроцедураButton1Click(Приложение4, рис.29), котораяработает аналогичнопроцедуреButton1Clickпредыдущейформы, в которойвызываетсяследующаяформа.

Во всех остальныхформах работапроцедур происходитаналогичновышеописанным(Приложение4, рис.28 - 38).

В последнейформе происходитпреобразованиенеобходимыхпеременныхи вывод их наформу (Приложение4, рис.39). Во-первых,общее количествовопросов (блоки2 и 3), во-вторых,количествоправильныхответов (блоки4 и 5), и в-третьихподсчет процентаправильныхответов и выводего (блоки 6 и7).

На десятом,последнем,этапе нужнопродолжитьмодификациюпроекта Project8,выполнив вводисходной информациио вопросах иответах изодного текстовогофайла 0.ТХТ.

Во всех модуляхнеобходимоубрать назначениеимени файла.

В модуле Unit0 в процедуреVVODнужно добавитьназначениеимени файла0.ТХТ.

В модуле Unit0 в процедуреVVODтребуетсязаписать операторывычисленияномера строкиNSTRначала вводаинформациинового вопросаи цикл пустогочтения дляпропуска ненужнойинформации(Приложение5, рис.41).

Сначала, вэтой процедуре,задается имятестового файла0.txt(блок 2), потомэтот файл открывается(блок 3). Далеевычисляетсяномер строкиначала вводаинформациинового вопросаи пропускаетсяненужная информация(блоки 4-7).

После этогопроизводитсяввод вопросаиз файла (блоки8 и 9), потом читаетсяправильныйответ (блоки10 и 11). Далее считываютсяварианты ответов,которые помещаютсяв специальныймассив Otvet(блоки 12-14), и номер(вид) вопроса(блоки 15 и 16).

После этогофайл закрывается(блок 17) и процедуразавершает своюработу (блок18).

После этогово всех модуляхотображениявопросов задатьоператор измененияномера вопросаq:=q+1.

Все процедурыпоказа форми обработкиответов остаютсяаналогичнымидевятому этапу(Приложение5, рис.42 - 59).


31



ВВЕДЕНИЕ


Оглядываясьназад, в эпохустановлениясредств вычислительнойтехники, можноусловно выделитьступени развитияавтоматизированныхобучающихсистем.

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

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

Таким образомсистемы развивалисьв областиинформационныхбаз знаний,поддерживающихуже не толькотекстовое, нои аудио-видеовоздействиена обучаемого.

Колоссальныйскачок былсделан и в сфереразвития системконтроля, ведьбез них, по существу,обучающаясистема малочем отличаетсяот справочногопособия. Итак,средства контроляобеспечиваютввод ответаобучаемого,обработкуполученнойинформациии выдачу управляющеговоздействия(например, вывводите ответ,а система одобряетили отвергаетего).

Следуя дальшепо ступеняминтеллектуализацииобучающихсистем, можнозаметить, какплавно механизмыконтроля перетекаютв механизмыанализа высказыванийобучающегося.Отметим, однако,что не следуетпутать их спростым контролемкак простойоценки единичногособытия синтегральнымоцениванием,являющимсярезультатоманализа исистематизациимножестваразнородныхответов данныхв разное время.Не вдаваясьв теорию обучения,давайте рассмотримпростой пример.Ведь чем посути отличаетсясредство длясоздания обучающегокурса от средствадля созданиямультимедийныхэнциклопедий?Примерно темже, чем учебникотличаетсяот лектора,ведущего лекциив учебном заведении.

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

Иными словами,анализ высказыванийобучающегосяпозволяет нетолько контролироватьучебный процесс,но и определяетстратегиюобучения взависимостиот предысторииответов и исходяиз определенногонабора правил.

В свою очередь,из анализавысказыванийобучаемогопроистекаетуправляющеевоздействиена него, котороев частном случаеможет быть иудаленным.Последнийметод, которыйназываетсядистанционнойформой обучения,в настоящеевремя находитсяв стадии становления.Вследствиеданного обстоятельствав последнеевремя технологииавтоматизированногообучения всебольше тяготеютк Internet -технологиям.

В даннойкурсовой работеречь пойдето созданиилабораторнойработы по теме«Созданиетестирующейпрограммы»,которая и будетявляться объектомисследования.

5



СПИСОКИСПОЛЬЗОВАННЫХИСТОЧНИКОВ


  1. http://www-2net.spbstu.ru/CD_ED/method-rec/. Особенностиразработкиучебных материалов.Статья. 2001.

  2. Фаронов В.В.Delphi4. Учебный курс.–М.: Нолидж, 1999.-447с.

  3. ДарахвелидзеП.Г., Марков Е.П.Delphi– среда визуальногопрограммирования.–СПб.:BHV-Санкт-Петербург,1996. -352с.

  4. ЕпанешниковА., ЕпанешниковВ. Программированиев среде Delphi2.0. Учебное пособие.В 4-х частях. Ч.1.Описание среды.–М.:ДИАЛОГ-МИФИ,1997. -235с.

  5. ЕпанешниковА., ЕпанешниковВ. Программированиев среде Delphi2.0. Учебное пособие.В 4-х частях. Ч.2.Язык ObjectPascal9.0. –М.:ДИАЛОГ-МИФИ,1997. -319с.

  6. Фаронов В.В.Турбо Паскаль7.0. Начальныйкурс. Учебноепособие. –М.:Нолидж,1997. -616с.

  7. Фаронов В.В.Турбо Паскаль7.0. Практикапрограммирования.Учебное пособие.–М.:Нолидж, 1997.-432с.


33



СОДЕРЖАНИЕ


стр.

ВВЕДЕНИЕ………………………………………………………………….

4
1. СОЗДАНИЕТЕСТИРУЮЩИХПРОГРАММ СИСПОЛЬЗОВА-НИЕМВИЗУАЛЬНЫХКОМПОНЕНТОВ……………………………

6


1.1.

Аналитическийобзор …………………………………………….

6

1.2. Описаниекомпонентов,используемыхпри реализациипрактическойчасти курсовойработы ……..……………………

7



1.2.1.

КомпонентTLabel…………………………….………….

8


1.2.2.

КомпонентTImage ……………………………………….

10


1.2.3.

КомпонентTTimer ...……………………………………..

11


1.2.4.

КомпонентTButton ………………………………………

12


1.2.5.

КомпонентTEdit……….. ………………………………..

14


1.2.6.

КомпонентTRadioButton ……………………………….

16


1.2.7.

КомпонентTComboBox ..……………………………….

17


1.2.8.

КомпонентTCheckBox ..………………………………...

19
2.

РАЗРАБОТКАПРОГРАММЫ………………………………………...

21

2.1.

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

21

2.2. Алгоритмреализацииработы …………………………………… 21

ЗАКЛЮЧЕНИЕ……………………………………………………………..

32

СПИСОКИСПОЛЬЗОВАННЫХИСТОЧНИКОВ……………………….

33
ПРИЛОЖЕНИЕ1 …………………………………………………………... 34
ПРИЛОЖЕНИЕ2 …………………………………………………………... 35

ПРИЛОЖЕНИЕ3 …………………………………………………………...

38
ПРИЛОЖЕНИЕ4 …………………………………………………………... 41
ПРИЛОЖЕНИЕ5 …………………………………………………………... 52
ПРИЛОЖЕНИЕ6 …………………...……………………………………… 64
ПРИЛОЖЕНИЕ7 …………………………………………………………... 98

МИНИСТЕРСТВООБРАЗОВАНИЯРОССИЙСКОЙФЕДЕРАЦИИ

МОСКОВСКИЙГОСУДАРСТВЕННЫЙИНСТИТУТ СТАЛИИ СПЛАВОВ

(ТЕХНОЛОГИЧЕСКИЙУНИВЕРСИТЕТ)

НОВОТРОИЦКИЙФИЛИАЛ

кафедраэкономики иинформатики


КУРСОВАЯРАБОТА

РАЗРАБОТКАЛАБОРАТОРНОГОПРАКТИКУМА


Исполнитель:


Студентгруппы


Руководитель:




Датадопуска к защите:

«__»_______200__г.




Новотроицк

2001


1. СОЗДАНИЕТЕСТИРУЮЩИХПРОГРАММ СИСПОЛЬЗОВАНИЕМВИЗУАЛЬНЫХКОМПОНЕНТОВ


1.1.Аналитическийобзор


Вкачествеинструментальногосредствацелесообразноиспользоватьсистему компьютерноготестирования(СКТ), удовлетворяющуюследующимтребованиям(1): 

  •  простотаподготовкитестовых заданий(задания могутсоздаватьсяпреподавателямив минимальнойстепени владеющимикомпьютером)

  • широкийдиапазон применения(возможностьиспользованиядля подготовкитестов по широкомуспектру дисциплин)

  • удобнаясистема управлениябазами тестовыхзаданий (удаление,добавлениезаданий, объединениебаз заданий)

  • наличиесистем сбораи обработкистатистическойинформациипо результатамтестирования(для тестируемыхи для тестовыхзаданий)

  • лёгкостьорганизацииоперативногоконтроля знанийв учебном процессе

  • удобныесредства решениязадач (например,наличие встроенногомикрокалькуляторас расширеннымивозможностями)

  • встроенныемультимедийныевозможности

  • компактность(система тестированияс количествомтестовых заданийдо несколькихсотен должнапомещатьсяна одну дискету)

  • низкиесистемныетребования(достаточноWindows 95/98/NT).

Бурноеразвитие глобальнойкомпьютернойсети показалоперспективностьудаленноготестированиястудентов спомощью интерактивныхWeb-тестов, устанавливаемыхна серверах,подключенныхк локальнойкомпьютернойсети или сетиИнтернет. Болееширокомураспространениютаких информационныхтехнологийв образовании,позволяющихне только повыситьинтенсивностьи эффективностьпроцесса обучения,но и существеннорасширитьаудиториюпотенциальныхслушателейведущих университетовстраны, препятствуеттрудоемкостьпроцесса разработкитестов, предназначенныхдля работы вWeb-сети.

ДлясозданияинтерактивныхWeb-тестов преподавателюпомимо знанийпо курсу, длякоторого предназначентест, требуютсяспециальныенавыки в областипримененияИнтернет-технологий,либо необходимапомощь соответствующегоспециалиста.При использованиидля разработкиучебных материаловлюбого из большогоколичестваимеющихсяинструментальныхсредств созданияи редактированияHTML-документов,например, такихкак Netscape Composer илиMicrosoft FrontPage, требуютсябазовые сведенияо гипертекстеи определенныенавыки в областипрограммирования.Кроме того, дляприданияWeb-документаминтерактивныхсвойств, позволяющихоперативнореагироватьна информацию,введеннуюпользователем,автору потребуютсяеще более глубокиезнания Интернет-технологий,связанные снеобходимостьюнаписанияпрограмм-обработчиковс использованиемJava, JavaScript или CGI-приложений.Таким образом,создание учебныхматериаловдля дистанционногообучения вWeb-сети предъявляетвесьма высокиетребованияк квалификациипреподавателя-разработчикав областипрактическогоиспользованиясовременныхинформационныхтехнологий.В противномслучае необходимасовместнаяработа коллективаспециалистовразличногопрофиля. Этиобстоятельствасущественноповышают трудоемкостьсоздания учебныхWeb-пособий и, вопределеннойстепени, сдерживаютпроцесс развитиятакой формыдистанционногообразования.


1.2. Описаниекомпонентов,используемыхпри реализациипрактическойчасти курсовойработы


В практическойчасти даннойкурсовой работыиспользуютсяследующиевизуальныеи невизуальныекомпоненты(2, 3, 4, 5) среды программированияBorlandDelphi6.0.

1.2.1. КомпонентTLabel


T

Labelслужитдля отображениятекста на экране.Можно изменитьшрифт и цветметки, еслидважды щелкнутьна свойствоFont в ИнспектореОбъектов. Видно,что это легкосделать и вовремя выполненияпрограммы,написав всегоодну строчкукода.

Этот компонентдоступен измодуля STDCTRLS,и находитсяна страницеПалитры компонентовStandard.

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

Свойствакомпонентаприведены втабл.1:

Таблица 1

СвойствакомпонентаTLabel


Свойство

Описание

(Pb)property Caption: TCaption; TCaption = string[255]; Содержитстроку с выводимымтекстом.
(Pb)property Alignment: TAlignment; Устанавливаетправило выравниваниятекста — поправому, левомукраю или поцентру клиентскойобласти.
(Pb)property AutoSize: Boolean;

В случаеTrueпроисходитавтоматическоеприведениеразмеровкомпонентак размерамтекста и высотешрифта.




Продолжениетабл.1

(Pb)property ShowAccelChar: Boolean;

Показывает,отображаетсяли в TLabelакселератор(символ, передкоторым стоитзнак амперсанда— '&'). Если оноравно False,амперсандникак неинтерпрети­руется.В случае Trueакселераторвыделяетсяв строке подчеркиваниеми нажатие клавиш+приводит кпередаче фокусаокну FocusControl(т.к. TLabelсам не являетсяоконным компонентом).

(Pb)property FocusControl: TWinControl; Определяетоконный компонент,которомупосылаютсясообщения овводе акселе­ратора.
(Pb)property Transparent: Boolean;

Прозрачностьфона компонента.Если свойствоустановленов True,то при перерисовкеэлементауправленияне про­исходитзакрашиваниеклиентскойоблас­ти. Впротивномслучае — происходитзакрашиваниекистью bsSolidи цветом Color.

(Pb)property WordMrap: Boolean; Определяетвозможностьразрыва словв случае, еслидлина выводимоготекста превышаетширину компонента.

1.2.2. КомпонентTImage


TImage - отображаетграфическоеизображениена форме. Воспринимаетформаты BMP, ICO, WMF. Есликартинку подключитьво время дизайнапрограммы, тоона прикомпилируетсяк EXE файлу.

Этот компонентдоступен измодуля EXTCTRLS,и находитсяна страницеПалитры компонентовAdditional.

Этот компонентслужит надстройкойнад классомTPictureи замыкает всюиерархию графическихобъектов VCL.Он предназначендля показа наформе изображения:битовой карты(TBitmap),метафайла(TMetafile),значка (TIcon).

Свойство(Pb)propertyPicture:TPicture;служит контейнеромдля графическогообъекта одногоиз перечисленныхклас­сов.

В качествеканвы используетсяканва объектаPicture.Graphic— только еслиполе Graphicссылается наобъект классаTBitmap:

(Pb) property Canvas: TCanvas;

Если этоне так, то попыткаобращения ксвойству вызоветисключительнуюситуациюEInvalidOperation,так как рисоватьна метафайлеили значкенельзя.

Следующиетри свойстваопределяют,как именноTpictureрасполагаетсяв рабочей областикомпонента:

(Pb) property AutoSize: Boolean;

— означает,что размерыкомпонентанастраиваютсяпо размерамсодержащегосяв нем графическогообъекта. Устанавливатьего в Trueнужно передзагрузкойизображенияиз файла илибуфера обмена;

(Pb) property Stretch: Boolean;

— если этосвойство установленов True,то изображение"натягивается"на рабочуюобласть, принеобходимостиуменьшая илиувеличиваясвои размеры.Если оно установленов False,то играет рольследующеесвойство;

(Pb) property Center: Boolean;

— если этосвойство установленов True,изображениецентрируетсяв пределахрабочей области.В противномслучае — располагаетсяв ее верхнемлевом углу.


1.2.3. КомпонентTTimer


T

Timer- таймер,событие OnTimerпериодическивызываетсячерез промежутоквремени, указанныйв свойствеInterval. Период времениможет составлятьот 1 до 65535 мс.

Этот компонентдоступен измодуля EXTCTRLS,и находитсяна страницеПалитры компонентовSystem.

Этот невизуальныйкомпонентпредназначендля уведомленияпрограммы обистеченииопределенныхпромежутковвремени. Компонентинкапсулируетсистемныйтаймер Windowsи работаетчерез посылкусообщенийWM_TIMER.

Свойство(Pb)propertyEnabled:Boolean;включает/выключаеттаймер, влияяна генерациюим событий.Будучи уста­новленв Enabled,таймер начинаетгенерироватьсобытия OnTimerчерез интер­валвремени

(Рb)property Interval: Word;

которыйизмеряетсяв миллисекундах.После каждогоистечениятакого интервалаинициируетсяобработчик,связанный ссобытием:

(Pb) property OnTimer: TNotifyEvent;

При этомпрограммистполучает очереднойквант времени.

При активизациии деактивизациитаймера илиизмененииинтервала всистеме можетне оказатьсясвободныхтаймеров. Вэтом случаегенерируетсяисключительнаяситуацияEOutOfResources.


1.2.4. КомпонентTButton


T

Buttonпозволяетвыполнитькакие-либодействия принажатии кнопкиво время выполненияпрограммы. ВDelphi все делаетсяочень просто.Поместив TButton наформу, по двойномущелчку можносоздать заготовкуобработчикасобытия нажатиякнопки. Далеенужно заполнитьзаготовкукодом:

procedureTForm1.Button1Click(Sender: TObject);

begin

MessageDlg('Areyou there?',mtConfirmation,mbYesNoCancel,0);

end;

Этот компонентдоступен измодуля STDCTRL,и находитсяна страницеПалитры компонентовStandard.

Двойнойщелчок на кнопкене предусмотрен.

Основнымсобытием, связаннымс нажатиемкнопки (любымспособом) является:

(Pb)property OnClick:TNotifyEvent;

Под"любым способом"здесь подразумеваетсящелчок мышью,нажатие комбинацииклавиши —акселератора,нажатие или (только длянекоторыхкнопок) иливызов методаClick из программы.

Тексткнопки, появляющийсяна ее поверхности,определен всвойстве:

(Pb)property Caption:string;

Еслив составе текстаесть амперсанд('&'), то следующийза ним символиспользуетсяв акселераторе,и нажатие комбинацииклавиш +вызывает нажатиекнопки.

Водоразделсреди кнопокпроходит потому, что именноозначает нажатие.Ряд кнопок —TRadioButton,TCheckBoxи группа TRadioGroup— предназначендля ввода илипереключенияфиксированныхпараметров,и программистаболее интересуетих состояниев некоторыймомент времени,чем сам фактнажатия. КнопкиTButton,TSpinButtonи TBitBtnнапротив, какправило, своимнажатием инициируютнемедленныедействия. КнопкаTSpeedButtonможет успешнослужить длярешения обеихзадач.

Какуже было сказано,нажатие влечетза собой OnClick. Ноэто не означает,что всегданужно писатькод для обработкивсех нажатий.Например, исключениемиз этого правилаявляетсяиспользованиекнопок в модальныхформах.

Модальнаяформа, или модальныйдиалог — специальнаяразновидностьокон Windows (и формDelphi), предназначеннаядля вводапользователемнеобходимыхпрограммеданных иливыбора одногоответа из несколькихвариантов.Обычно при этомему предоставляетсянесколькокнопок, соответствующихвариантам.Вплоть до полученияответа в модальномдиалоге пользовательне может переключитьсяна другие окнатой же задачи,а в системноммодальномдиалоге — и надругие задачи.Для использованияв таких случаяхпредназначеныстандартнаякнопка Windows TButtonи ее младшаясестра TBitBtn,отличающаясятолько наличиемкартинки наее поверхности.При их нажатиизначение свойстваModalResult кнопки передаетсяодноименномусвойству формы,где такое изменениеозначает выводформы из модальногосостояния иее закрытие:

(Pb)property ModalResult:TModalResult;

TModalResult= Low(Integer) ..High(Integer);

В модальнойформе могутбыть предусмотреныдве специальныекнопки, соответствующиеположительномуи отрицательномурешениям. Однаиз них срабатываетпри нажатиина клавиатуре, другая —. Любая кнопкаможет получитьтакой статус,установив вTrue соответственноодно из свойств:

(Pb)property Default:Boolean;

(Pb)property Cancel:Boolean;

У двухрассмотренныхкнопок результат,который принажатии кнопкипередаетсямодальнойформе, будетсоответственноравен mrOk и mrCancel.


1.2.5. КомпонентTEdit


T

Edit- стандартныйуправляющийэлемент Windows дляввода. Он можетбыть использовандля отображениякороткогофрагментатекста и позволяетпользователювводить текство время выполненияпрограммы.

Этот компонентдоступен измодуля STDCTRL,и находитсяна страницеПалитры компонентовStandard.

Этоткомпонент несодержит собственногокода, в нем толькоопубликованысвойства егопредка TCustomEdit.Он представляетсобой редактируемуюстроку (далее— просто редактор).

Стильобрамленияэтого компонента

(Pb)property BorderStyle:TBorderStyle;

поумолчанию равенbsSingle.

Еслисвойство

(Pb)property AutoSize:Boolean;

равноTrue, компонентизменяет своювысоту в зависимостиот размерашрифта (свойствоFont). Для того чтобыизменения имелиместо, долженеще быть установленстиль обрамленияbsSingle.

Вводимыйв редактортекст можетавтоматическиподвергатьсянекоторымпреобразованиям.

Преобразование,задаваемоесвойствомCharCase, позволяетавтоматическипреобразовыватьвсе символытолько в верхнийили только внижний регистр:

(Pb)property CharCase:TEditCharCase;

TEditCharCase =(ecNormal, ecUpperCase, ecLowerCase) ;

Поумолчаниюустановленстиль ecNormal и преобразованияне происходит.

Аналогично,свойство

(Pb)property OEMConvert:Boolean;

определяетнеобходимостьавтоматическогопреобразованиявводимых символовиз кодировкиOEM в ANSI и обратно.Такое свойствочасто бываетнужно при обработкетекста в кодировкеMS-DOS.

Дваследующихсвойства описываютповедениевыделенноготекста припереходе фокуса.Первоеизних

(Pb)property AutoSelect:Boolean;

описываетреакцию редактирующегоэлемента приполучениифокуса. Еслионо установленов True (по умолчаниюэто так), то приполучениифокуса вводавесь текст внем выделяетсянезависимоот состояниясвойства SelText.Если AutoSelect установленов False, то при получениифокуса выделяетсялишь то, чтобыло выделенодо его утери.

Послеутери фокусаредакторомвыделенныйв нем текстобычно теряетцветовое выделение.Чтобы оно оставалось,установитев False второе свойство:

(Pb)property HideSelection:Boolean;

На длинутекста можетбыть наложеноограничение.Свойство

(Pb)property MaxLength:Integer;

определяетмаксимальнуюдлину текстаредактора всимволах. Еслизначение этогосвойства равно0, то ограниченийна длину текстанет.

СвойствоPasswordChar предназначенодля ввода пароляс использованиемредактора:

(Pb)property PasswordChar:Char;

Егозначение — этосимвол, используемыйдля отображениявместо любыхвводимых символов.

Можнозапретитьвозможностьредактированиятекста. Еслизначение свойства:(Pb)property ReadOnly:Boolean;

равноTrue, текст изменитьнельзя.

Можноотследитьизменениятекста в редакторе,обрабатываяпоступающиесобытия:

(Pb)property OnChange:TNotifyEvent ;

1.2.6. КомпонентTRadioButton


T

RadioButtonпозволяетвыбрать толькоодну опцию изнескольких.Если опятьоткрыть диалогOptions | Project и выбратьстраницу LinkerOptions, то можно видеть,что секции Mapfile и Link buffer file состоятиз наборовRadioButton.

Этот компонентдоступен измодуля STDCTRL,и находитсяна страницеПалитры компонентовStandard.

Радиокнопка(переключатель),или кнопка сзависимойфиксацией —также стандартныйэлемент управленияWindows. Особенностьюрадиокнопокявляется механизмих переключения.Они группируютсяавтоматически,то есть привыборе однойиз них все остальные,принадлежащиетому же элементууправленияили форме,освобождаются.Для того чтобыв форме можнобыло использоватьнескольконезависимыхгрупп радиокнопок,используйтеспециальныекомпоненты.

Свойство

(Pb)property Checked:Boolean;

определяет,нажата ли даннаярадиокнопка.При измененииэтого свойствагенерируетсясобытие OnClick.

У радиокнопкиимеется свойствоCaption, содержащеесвязанный сней текст.Выравниваниетекста радиокнопкиопределяетсясвойством

(Pb)property Alignment:TLeftRight;

и можетпроводитьсятолько по левомуили по правомукраю. У этогокомпонентапредусмотренотакже событие:

(Pb)property OnDblClick;

Такоесобытие посылаетсятолько уженажатой радиокнопке,в то время какOnClick — только ненажатой.


1.2.7. КомпонентTComboBox


T

ComboBoxво многомнапоминаетListBox, за исключениемтого, что позволяетвводить информациюв маленькомполе вводасверху ListBox. Естьнесколько типовComboBox, но наиболеепопуляренспадающий вниз(drop-down combo box), которыйможно видетьвнизу окнадиалога выборафайла.

Этот компонентдоступен измодуля STDCTRL,и находитсяна страницеПалитры компонентовStandard.

Этотстандартныйэлемент управленияWindows — комбинированныйсписок — имеетмного общегос TListBox.Он состоит изсобственносписка и помещенногорядом поляввода редактирующегоэлемента. Такимобразом, пользовательможет выбратьодно из готовыхзначений какой-товеличины иливвести свое.Стиль компонентав части правилвзаимногосочетаниясписка и редактораопределяетсясвойством:

(Рb)propertyStyle:TComboBoxStyle;

TComboBoxStyle= (csDropDown, csSimple, csDropDownList,csOwnerDrawFixed,csOwnerDrawVariable) ;

Его значенияимеют следующийсмысл:

  • csSimple— весь списоквиден все время.Текущий выборотображаетсяв редакторе,его можно изменить;

  • csDropDown— список открывается(выпадает) искрываетсяпри нажатиикнопки, расположеннойсправа от текста.Такой списокбудем называтьвыпадающим;

  • csDropDownList —список выпадающий,но редактирующийэлемент замененстатическимтекстом и вводитьсвои данныепользовательне может;

  • csOwnerDrawFixed —определяемыйпользователемстиль спискас постояннойвысотой элемента;

  • csOwnerDrawVariable— определяемыйпользователемстиль спискас переменнойвысотой элемента.

Принципыпользовательскойотрисовкисписка дляcsOwnerDrawFixed и csOwnerDrawVariable, а такжесвязанные сэтим методыи события осталисьтакими же, какв TListBox.По умолчаниюустанавливаетсястиль csDropDown.

Организациясписка такжесходна с предыдущей.Приведенныесвойства иметоды имеютто же назначение:

(Pb)propertyItems:TStrings;

propertyItemIndex:Integer;

procedureClear;

(Pb)propertySorted:Boolean;

(Ro)propertyCanvas:TCanvas;

Текст,содержащийсяв редактирующемэлементе списка,доступен черезсвойство:

(Pb)propertyText:TCaption;

Егомаксимальнаядлина ограниченачислом символов,равным значениюсвойства:

(Pb)propertyMaxLength:Integer;

ЕслиMaxLength равно 0, тоограниченийна длину строкинет (до 255 символов).

Приизменениитекста (а такжепри смене выбранногоэлемента) возникаетсобытие OnChange.

Частьтекста можетбыть выделена.Три свойствасодержат выделенныйтекст, его положениеи длину:

propertySelText:string;

propertySelStart:.Integer;

propertySelLength:Integer;

МетодprocedureSelectAll;выделяет весьтекст. Значениесвойства

propertyDroppedDown:Boolean;

соответствуетсостояниюсписка: True соответствуетоткрытому("выпавшему")списку. С егопомощью можнопоказыватьили скрыватьсписок из программы.При изменениисостояниясписка возникаетсобытие:

(Pb)property OnDropDown:TNotifyEvent;

Максимальноечисло элементов,которые показываютсяпри выпадениисписка:

(Pb)propertyDropDownCount:integer;

поумолчанию оноравно 8. В первойверсии VCL этосвойство описано,но не реализовано(не играет роли).


1.2.8. КомпонентTCheckBox


T

CheckBoxотображаетстроку текстас маленькимокошком рядом.В окошке можнопоставитьотметку, котораяозначает, чточто-то выбрано.Например, еслипосмотретьокно диалоганастроек компилятора(пункт менюOptions | Project, страницаCompiler), то можноувидеть, чтооно состоитпреимущественноиз CheckBox’ов.

Этот компонентдоступен измодуля STDCTRL,и находитсяна страницеПалитры компонентовStandard.

Кнопкас независимойфиксацией, илифлажок. ЯвляетсястандартнымэлементомуправленияWindows.

Состояниекнопки отражаетсвойство:

(Pb)property State:TCheckBoxState;

Ономожет приниматьодно из трехзначений: .

TCheckBoxState =(cbUnchecked, cbChecked, cbGrayed);

Способперехода изсостояния всостояние принажатии устанавливаетсясвойством:

(Pb)property AllowGrayed:Boolean;

Еслионо равно False,кнопка имеетдва состоянияи при каждомнажатии переходитиз cbUnchecked в cbChecked и обратно.Если AllowGrayed = True, кнопкаимеет три состоянияи при нажатияхдвижется поциклу cbGrayed — cbChecked —cbUnchecked.

Показывает,отмечена ликнопка (т. е. State =cbChecked), свойство:

(Pb)property Checked:Boolean;

Онодоступно длязаписи — с егопомощью можнои отмечатькнопки. ЗначениеFalse соответствуетcbUnchecked.

Выравниваниетекста (толькопо правому илилевому краю)задается припомощи свойства:

(Pb)property Alignment:TLeftRight;
TLeftRight= taLeftJustify..taRightJustify;

Кнопкатакже имеетсвойство Caption.Двойной щелчокна кнопке непредусмотрен.


20



ЗАКЛЮЧЕНИЕ


В результатевыполненияданной курсовойработы былразработанлабораторныйпрактикум. Былопроведеноисследованиекомпонентовпрограммнойсреды BorlandDelphi6.0, которые использовалисьпри созданииданного практикума.

В результатеисследованиябыли выявленыследующиенедостаткиполученноголабораторногопрактикума:

  1. Невозможностьвернуться кпредыдущемувопросу тестирующейпрограммы;

  2. Незащищенностьисходноготекстовогофайла с вопросамии ответами, врезультатечего естьвозможностьобойти ответыи получитьположительнуюоценку;

  3. Жесткаяпривязка клинейке операционныхсистем Windows.

Однако, помимонедостатков,есть и достоинствау получаемогопрограммногопродукта ииспользованиялабораторногопрактикума:

  1. Программныйпродукт малотребователенк системнымресурсам компьютера.Минимальнаяконфигурация:процессор –не ниже Pentium,оперативнаяпамять – нениже 16 Mb,операционнаясистема – Windows95 / 98/ Me/ NT/ 2000 / XP;

  2. Программныйпродукт можноиспользоватьдля контролязнаний по любымдисциплинам,достаточноизменить текстовыйфайл с вопросамии ответами;

  3. Лабораторныйпрактикумлегок в изучении,и дает достаточнонеобходимыхзнаний длясоздания тестирующихпрограмм.

В результатеучета всехсделанных вышезамечанийвозможно улучшениесоздаваемогопрограммногопродукта, накоторое потребуетсяминимум измененийисходного кодапрограммы.


32