Тестирование уровня знаний

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

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 21.07.2013
Размер файла 2,8 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

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

Создать в Delphi программу, позволяющую тестировать уровень знаний операционной системы Windows.

В тесте 5 вопросов. На каждый вопрос выдается на экран несколько вариантов ответов, среди которых один - правильный. При получении правильного ответа начисляются баллы. Ведется подсчет набранных баллов. Количество набранных баллов выводится на экран.

При выборе какого-либо ответа, появляется компонент ShowMessage, с текстом о правильности, или неправильности, выбранного ответа.

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

2. Реализация поставленной задачи средствами Delphi

2.1 Описание работы с программой

Создание прикладных программ и приложений Delphi выполняется в интегрированной среде разработки. Интегрированная среда разработки (Integrated Development Environment - IDE, в дальнейшем для нее будет использоваться аббревиатура IDE) - это среда, в которой есть все необходимое для проектирования, запуска и тестирования приложений и где все нацелено на облегчение процесса создания программ. IDE интегрирует в себе редактор кодов, отладчик, инструментальные панели, редактор изображений, инструментарий баз данных - все, с чем приходится работать.

Рис. 1. Основное окно интегрированной среды разработки Delphi

Интегрированная среда разработки выглядит несколько необычно (рис. 1). Вместо одного окна на экране появляются пять:

· главное окно - Delphi 3;

· окно стартовой формы - Form 1;

· окно редакторов свойств объектов - Object Inspector;

· окно просмотра списка объектов - Object TreeView;

· окно редактора кода - Unit1.pas.

Окно редактора кода почти полностью закрыто окном стартовой формы. Для версий Delphi, отличных от Delphi 3, окно выглядит несколько иначе, но в основных чертах окна IDE всех версий Delphi одинаковы.

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

Окно стартовой формы (Form 1) представляет собой заготовку главного окна приложения.

Меню команд

Рис. 2. Главное окно

Окно Object Inspector (рис. 3) - окно редактора свойств объектов предназначено для редактирования значений свойств объектов. В терминологии визуального проектирования объекты - это диалоговые окна и элементы управления (поля ввода и вывода, командные кнопки, переключатели и др.). Свойства объекта - это характеристики, определяющие вид, положение и поведение объекта. Например, свойства Width и Height задают размер (ширину и высоту) формы, свойства тор и Left - положение формы на экране, свойство Caption - текст заголовка.

В окне редактора кода (рис. 4), которое можно увидеть, отодвинув в сторону окно формы, следует набирать текст программы. В начале работы над новым проектом это окно редактора кода содержит сформированный Delphi шаблон программы.

Окно редактора кода

2.2 Описание компонентов

Создавая данную программу, я использовала такие компоненты как Button, Edit, Label, MainMenu, Panel, RadioButton, StringGrid, Timer.

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

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

Имена компонентов, соответствующих той или иной пиктограмме, вы можете узнать из ярлычка, появляющегося, если вы задержите над этой пиктограммой курсор мыши. Если вы выберете в палитре компонент и нажмете клавишу F1, то вам будет показана справка по типу данного компонента. Имена на ярлычках выглядят, например, так: MainMenu, Button и т.д. Однако, в Delphi все имена классов в действительности начинаются с символа «Т», например, TMainMenu, TButton. Под такими именами вы можете найти описания соответствующих компонентов во встроенной в Delphi справочной системе.

2.2.1 Button

Компонент Button это простая командная кнопка, расположенная на странице библиотеки Standard. Командная кнопка Button используется для реализации в программе команд с помощью обработчика события OnClick этого компонента.

Один и тот же обработчик может обрабатывать события нескольких компонентов TButton (да и не только TButton, но и даже компонентов других типов). Для определения того, событие какого именно компонента нужно обрабатывать, используется встроенная переменная Sender типа TObject, обозначающая объект, вызвавший данное событие.

Ниже, в таблице 1, приведены свойства компонента Button.

Местонахождение компонента Button на палитре компонентов

Вид компонента Button на форме

Таблица 1 Свойства компонента Button (командная кнопка)

Свойство

Описание

Name

Имя компонента. Используется в программе для доступа к компоненту и его свойствам

Caption

Текст на кнопке

Enabled

Признак доступности кнопки. Кнопка доступна, если значение свойства равно True, и недоступна, если значение свойства равно False

Left

Расстояние от левой границы кнопки до левой границы формы

Top

Расстояние от верхней границы кнопки до верхней границы формы

Height

Высота кнопки

Width

Ширина кнопки

2.2.2 Edit

Компонент Edit представляет собой однострочное текстовое поле, служащее для ввода данных пользователем. Он также как и Button расположен на вкладке Standard. Основным свойством компонента Edit, передающим введённую информацию, является свойство Edit1. Text типа String. Это свойство можно устанавливать в процессе проектирования или задавать программно. Выравнивание текста невозможно. Перенос строк тоже невозможен. Текст, не помещающийся по длине в окно, просто сдвигается, и пользователь может перемещаться по нему с помощью курсора. Свойство AutoSize в окнах редактирования имеет смысл, отличный от смысла аналогичного свойства меток: автоматически подстраивается под размер текста только высота, но не ширина окна.

Ниже, в таблице 2, приведены свойства компонента Edit.

Месторасположение компонента Edit на палитре компонентов

Вид компонента Edit на форме

Таблица 2. Свойства компонента Edit (поле ввода-редактирования)

Свойство

Описание

Name

Имя компонента. Используется в программе для доступа к компоненту и его свойствам, в частности - для доступа к тексту, введенному в поле редактирования

Text

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

Left

Расстояние от левой границы компонента до левой границы формы

Top

Расстояние от верхней границы компонента до верхней границы формы

Height

Высота поля

Width

Ширина поля

Font

Шрифт, используемый для отображения вводимого текста

ParentFont

Признак наследования компонентом характеристик шрифта формы, на которой находится компонент. Если значение свойства равно True, то при изменении свойства Font формы автоматически меняется значение свойства Font компонента

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

2.2.3 Label

Компонент Label предназначен для отображения статического текста, то есть надписей и меток на Форме, которые не меняются в течение всего времени работы программы. Конечно, текст надписи, отображаемый компонентом Label можно изменить, но не непосредственно, а только программно. Значок компонента Label находится на вкладке Standard. Добавляется компонент Label в форму точно так же, как и поле редактирования.

Месторасположение компонента Label на палитре компонентов

Вид компонента Label на форме

Свойства компонента Label перечислены в таблице 3.

Следует обратить внимание на свойства Autosize и Wordwrap. Эти свойства нужно использовать, если поле вывода должно содержать несколько строк текста. После добавления к форме компонента Label значение свойства Autosize равно True, т.е. размер поля определяется автоматически в процессе изменения значения свойства Caption. Если вы хотите, чтобы находящийся в поле вывода текст занимал несколько строк, то надо сразу после добавления к форме компонента Label присвоить свойству Autosize значение False, свойству Wordwrap - значение True. Затем изменением значений свойств Width и Height нужно задать требуемый размер поля. Только после этого можно ввести в свойство Caption текст, который должен быть выведен в поле.

Таблица 3. Свойства компонента Label (поле вывода текста)

Свойство

Описание

Name

Имя компонента. Используется в программе для доступа к компоненту и его свойствам

Caption

Отображаемый текст

Font

Шрифт, используемый для отображения текста

ParentFont

Признак наследования компонентом характеристик шрифта формы, на которой находится компонент. Если значение свойства равно True, текст выводится шрифтом, установленным для формы

AutoSize

Признак того, что размер поля определяется его содержимым

Left

Расстояние от левой границы поля вывода до левой границы формы

Top

Расстояние от верхней границы поля вывода до верхней границы формы

Height

Высота поля вывода

Width

Ширина поля вывода

Wordwrap

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

2.2.4 MainMenu

Компонент MainMenu расположен на вкладке Standard. Это невизуальный компонент, т.е. место его размещения на форме в процессе проектирования не имеет никакого значения для пользователя - он все равно увидит не сам компонент, а только меню, сгенерированное им.

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

Месторасположение компонента MainMenu на палитре компонентов

Вид компонента MainMenu на форме

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

В таблице 4 приведены основные свойства компонента MainMenu.

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

Таблица 4. Важнейшие свойства и события компонента MainMenu

Свойство

Описание

AutoHotKeys

Значение maAutomatic избавляет программиста от необходимости назначать пунктам меню «горячие» клавиши (с помощью специального символа & в тексте пунктов); компонент автоматически подбирает «горячие» клавиши. Значение maManual требует, чтобы «горячие» клавиши назначил программист

AutoLineReduction

Если равно значению maAutomatic, то при отображении меню идущие подряд пункты-разделители рисуются как один разделитель, а пункты-разделители, находящиеся в начале или конце меню вообще не показываются. Свойство AutoLineReduction применяется при программном добавлении и удалении пунктов меню, чтобы избежать нежелательных явлений вроде повторяющихся и повисших разделительных линий. Если свойство AutoLineReduction равно значению maManual, то все пункты меню рисуются как есть

AutoMerge

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

Images

Список значков, отображаемых рядом с пунктами меню. Свойство Images используется совместно со свойством ImageIndex компонентов MenuItem

Items

Массив пунктов меню

OwnerDraw

Если равно значению True, то каждый пункт меню получает возможность участвовать в процессе своего отображения при помощи специальных событий OnMeasureItem и OnDrawItem. Событие OnMeasureItem происходит в пункте меню, когда рассчитываются размеры пункта. Событие OnDrawItem происходит в пункте меню, когда пункт рисуется на экране. Если свойство OwnerDraw равно значению False, то пункты меню имеют стандартный вид и события OnMeasureItem и OnDrawItem не происходят.

OnChange

Происходит при изменении структуры меню.

2.2.5 Panel

Компонент Panel можно использовать для визуальной группировки элементов, связанных друг с другом каким-либо обстоятельством. Панели можно придать приподнятый или опущенный вид, изменяя два ее свойства: BevelOuter и BevelInner. Выбрав для каждого из этих свойств значения bvNone, bvLowered, bvRaised, вы можете достигать различных рельефных визуальных эффектов.

Регулировку визуального эффекта можно производить, задавая числовое значение для свойства BewelWidth.

Месторасположение компонента Panel на палитре компонентов

Вид компонента Panel на форме

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

Таблица 5. Свойства компонента Panel

Свойство

Описание

Name

Имя компонента. Используется в программе для доступа к компоненту и его свойствам

Caption

Отображаемый текст

Left

Расстояние от левой границы компонента до левой границы формы

Top

Расстояние от верхней границы компонента до верхней границы формы

Height

Высота поля

Width

Ширина поля

Align

выравнивание компонента по всей верхней, левой, правой, нижней частям контейнера или по всей его клиентской области

Anchors

привязка сторон компонента к сторонам контейнера

Constraints

ограничения допустимых изменений размеров

2.2.6 RadioButton

Компонент RadioButton - это «радиокнопка», и как следует из названия, служит для «переключения каналов», как и в настоящем радиоприёмнике. Это значит, если выбран один из компонентов RadioButton, то с остальных компонентов выбор автоматически снимается. Получается, что в данный момент может быть выбран только один из группы компонентов RadioButton.

Если в начальный момент ни один из компонентов не выбран, то достаточно сделать такой выбор - щёлкнуть по одному из компонентов, и в дальнейшем можно только «переключать» компоненты, снять выбор уже невозможно. Хотя нет, есть способ - программно! Компонент Delphi RadioButton состоит из круглого окошка и текстовой строки. В окошке появляется отметка выбора данного компонента, текстовая строка поясняет его смысл. За изменение текстовой строки отвечает свойство Caption. Основное же свойство компонента RadioButton - Checked (т.е. «выбрано») типа Boolean, доступное как для чтения, так и для записи. У выбранного компонента свойство Checked равно True.

Основным событием компонента RadioButton является, естественно, OnClick, то есть щелчок мышкой. В этот момент могут быть выполнены процедуры, соответствующие выбору этого компонента.

Месторасположение компонента RadioButton на палитре компонентов

Вид компонента RadioButton на форме

2.2.7 StringGrid

Компонент StringGrid находится на странице Additional. Для работы с массивами его часто используют.

Месторасположение компонента StringGrid на палитре компонентов

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

В таблице 6 приведены основные свойства компонента StringGrid.

Вид компонента StringGrid на форме

Таблица 6. Основные свойства компонента StringGrid

Свойство

Описание

Cells

ячейка, содержащая индексы строки и столбца

Cols

список строк, содержащихся в столбце с индексом Index

Rows

список строк, содержащихся в столбце с индексом Index

Objects

объект, связанный со строкой

ColCount, RowCount

определяют число столбцов и строк

FixedCols, FixedRows

определяют число не прокручиваемых столбцов и строк.

FixedColor

цвет фона фиксированных ячеек

LeftCol, TopRow

определяют индексы первого видимого на экране в данный момент столбца и строки

Scrollbars

наличие полос прокрутки

2.2.8 Timer

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

Таймер - невизуальный компонент, который может размещаться в любом месте формы. Он имеет два свойства, позволяющие им управлять: Interval - интервал времени в миллисекундах и Enabled - доступность. Свойство Interval задает период срабатывания таймера. Через заданный интервал времени после предыдущего срабатывания, или после программной установки свойства Interval, или после запуска приложения, если значение Interval установлено во время проектирования, таймер срабатывает, вызывая событие OnTimer. В обработчике этого события записываются необходимые операции.

Месторасположение компонента Timer на палитре компонентов

Вид компонента Timer на форме

2.3 Описание работы программы и ее фрагменты

Для реализации задачи, в среде Delphi было разработано приложение, состоящие из 4 взаимосвязанных форм. На исходную форму (рис. 21) -1 - вынесены два компонента Label, один компонент Panel и три компонента RadioButton.

Внешний вид исходной формы

На компоненте Panel расположены три компонента RadioButton. При нажатии на RadioButton1 («Новичок») Вы переходите на вторую форму - Form2. При нажатии на RadioButton2 («Опытный пользователь») Вы переходите на третью форму - Form3. При нажатии на RadioButton3 («Профессионал») Вы переходите на четвертую форму - Form4.

Form2, Form3 и Form4 абсолютно идентичны по внешним признакам. Различие состоит лишь в тексте вопросов и ответов. Внешний вид остальных форм показан на рисунке 22.

Форма теста

На оставшихся трех формах располагаются компоненты MainMenu, Edit, три RadioButton, Button, Timer и StringGrid. Последние, из перечисленных, не видны на формах.

При нажатии на кнопку «Начать тест» (компонент MainMenu) появляется вопрос и варианты ответов (рис. 23), а при нажатии на «Вернуться назад» (компонент MainMenu) Вы возвращаетесь на исходную форму.

Окно программы с текстом теста

При выборе любого из вариантов ответов и нажатии на кнопку «Следующий вопрос» (компонент Button) появляется оператор ShowMessage. Данный оператор сообщает Вам о правильности выбранного ответа. Если выбранный Вами ответ является правильным, то ShowMessage появляется с текстом: «Правильно!=)» (рис. 24). Также, при выборе правильного ответа, Вам сразу идет начисление баллов в компонент Edit. За один правильный ответ Вы зарабатываете 5 баллов. В случае выбора неверного ответа ShowMessage появляется с текстом: «Не правильно!=(» (рис. 25), и в данном случае никаких баллов Вы не зарабатываете.

Вид окна программы при выборе правильного ответа

Вид окна программы при выборе неверного ответа

При окончании теста программа возвращает Вас на исходную форму.

3. Программа решения задачи

unit Unit1;

interface

uses

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

StdCtrls, ExtCtrls, Menus, Grids;

type

TForm1 = class(TForm)

RadioButton1: TRadioButton;

RadioButton2: TRadioButton;

RadioButton3: TRadioButton;

Label1: TLabel;

panel: TPanel;

Label2: TLabel;

procedure RadioButton1Click (Sender: TObject);

procedure RadioButton2Click (Sender: TObject);

procedure RadioButton3Click (Sender: TObject);

private

{Private declarations}

public

{Public declarations}

end;

var

Form1: TForm1;

implementation

procedure TForm1. RadioButton1Click (Sender: TObject);

begin

if RadioButton1.enabled=true then begin form2. Visible:=true;

form3. Visible:=false; form4. Visible:=false;

end;

end;

procedure TForm1. RadioButton2Click (Sender: TObject);

begin

if RadioButton2.enabled=true then begin

form3. Visible:=true; form2. Visible:=false; form4. Visible:=false;

end; end;

procedure TForm1. RadioButton3Click (Sender: TObject);

begin

if RadioButton3.enabled=true then begin

form3. Visible:=false; form2. Visible:=false; form4. Visible:=true;

end;

end;

end.

unit Unit2;

interface

uses

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

Grids, StdCtrls, ExtCtrls, Menus;

type

TForm2 = class(TForm)

StringGrid1: TStringGrid;

Timer1: TTimer;

Panel1: TPanel;

RadioButton1: TRadioButton;

RadioButton2: TRadioButton;

RadioButton3: TRadioButton;

Edit1: TEdit;

MainMenu1: TMainMenu;

N1: TMenuItem;

N2: TMenuItem;

Button2: TButton;

procedure N2Click (Sender: TObject);

procedure FormCreate (Sender: TObject);

procedure RadioButton1Click (Sender: TObject);

procedure RadioButton2Click (Sender: TObject);

procedure RadioButton3Click (Sender: TObject);

procedure Button2Click (Sender: TObject);

procedure N1Click (Sender: TObject);

private

{Private declarations}

public A, B, C, D:array [1..50] of string; kk, k, sum:INTEGER;

F:array [1..50] of integer;

{Public declarations}

end;

var

Form2: TForm2;

implementation

uses Unit1, Unit3;

{$R *.DFM}

procedure TForm2.N2Click (Sender: TObject);

begin

form1.show; form2. Visible:=false;

end;

procedure TForm2. FormCreate (Sender: TObject);

begin

with stringgrid1 do begin kk:=0;

A[1]:='Что такое операционная система?';

B[1]:='программное обеспечение';

C[1]:='некоторая программа';

D[1]:='папка с файлами';

F[1]:=1;

A[2]:='Как называется верхняя строка окна приложения Windows?';

B[2]:='Управления размерами окна';

C[2]:='Меню';

D[2]:='Строка заголовка';

F[2]:=3;

A[3]:='Какие шаблоны используются при работе с файлами?';

B[3]:='? / _';

C[3]:='*?';

D[3]:='/ *';

F[3]:=2;

A[4]:='Что является отличительным признаком имени диска?';

B[4]:='названия дисков пишутся с большой буквы';

C[4]:='косая черта';

D[4]:='двоеточие после его буквы';

F[4]:=3;

A[5]:='Выберите правильное окончание фразы. Ярлык - это…';

B[5]:='фоновый узор';

C[5]:='ссылка на объект';

D[5]:='обязательный элемент Рабочего стола ';

F[5]:=2;

radiobutton1.checked:=false; radiobutton2.checked:=false; radiobutton3.checked:=false;

end; end;

procedure TForm2. RadioButton1Click (Sender: TObject);

begin

if radiobutton1.checked=true then k:=1;

end;

procedure TForm2. RadioButton2Click (Sender: TObject);

begin

if radiobutton2.checked=true then k:=2;

end;

procedure TForm2. RadioButton3Click (Sender: TObject);

begin

if radiobutton3.checked=true then k:=3;

end;

procedure TForm2. Button2Click (Sender: TObject);

begin

if kk>5 then begin form2.visible:=false; form1.show; end else

begin if k=F[kk] then

begin

sum:=sum+5;

edit1.text:=inttostr(sum);

showmessage ('Правильно!=)');

end else showmessage ('Не правильно!=(');

kk:=kk+1; panel1. Caption:=A[kk];

radiobutton1.caption:=B[kk];

radiobutton2.caption:=C[kk];

radiobutton3.caption:=D[kk];

end; end;

procedure TForm2.N1Click (Sender: TObject);

begin

kk:=kk+1; panel1. Caption:=A[1]; edit1. Text:='0';

radiobutton1.caption:=B[1];

radiobutton2.caption:=C[1];

radiobutton3.caption:=D[1];

end;

end.

unit Unit3;

interface

uses

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

Grids, StdCtrls, ExtCtrls, Menus;

type

TForm3 = class(TForm)

StringGrid1: TStringGrid;

Timer1: TTimer;

Panel1: TPanel;

RadioButton1: TRadioButton;

RadioButton2: TRadioButton;

RadioButton3: TRadioButton;

MainMenu1: TMainMenu;

test1: TMenuItem;

bacck1: TMenuItem;

Edit1: TEdit;

Button2: TButton;

procedure bacck1Click (Sender: TObject);

procedure FormCreate (Sender: TObject);

procedure RadioButton1Click (Sender: TObject);

procedure RadioButton2Click (Sender: TObject);

procedure RadioButton3Click (Sender: TObject);

procedure Button2Click (Sender: TObject);

procedure test1Click (Sender: TObject);

private

{Private declarations}

public A, B, C, D:array [1..50] of string; kk, k, sum:INTEGER;

F:array [1..50] of integer;

{Public declarations}

end;

var

Form3: TForm3;

implementation

uses Unit1, Unit2;

{$R *.DFM}

procedure TForm3.bacck1Click (Sender: TObject);

begin

form1.show; form3. Visible:=false;

end;

procedure TForm3. FormCreate (Sender: TObject);

begin

with stringgrid1 do begin kk:=0;

A[1]:='Укажите шаблон для поиска на диске файлов начинающихся на букву А';

B[1]:='A.*';

C[1]:='А';

D[1]:='A*.*';

F[1]:=3;

A[2]:='В чем заключается особенность пиктограмм ярлыков?';

B[2]:='Более яркая окраска';

C[2]:='Особенностей нет';

D[2]:='Наличие в левом нижнем углу стрелки';

F[2]:=3;

A[3]:='Как быстро восстановить только что стертый файл?';

B[3]:='Найти папку, из которой был стерт файл и выполнить восстановление';

C[3]:='Выполнить команду Правка / Отменить';

D[3]:='Открыть папку Корзина и задать Восстановить';

F[3]:=2;

A[4]:='Где можно задать фунты стерлингов в качестве национальной валюты?';

B[4]:='C помощью Панели управления';

C[4]:='В Excel';

D[4]:='Панель управления / Язык и региональные стандарты';

F[4]:=3;

A[5]:=' Как сортируются объекты в Windows?';

B[5]:='Сначала папки, потом файлы, сначала цифры, затем папки с именами на английском языке, затем с именами на русском';

C[5]:='Сначала объекты с именами на английском языке, потом на русском';

D[5]:='Сначала папки, потом файлы';

F[5]:=1;

radiobutton1.checked:=false; radiobutton2.checked:=false; radiobutton3.checked:=false;

end; end;

procedure TForm3. RadioButton1Click (Sender: TObject);

begin

if radiobutton1.checked=true then k:=1;

end;

procedure TForm3. RadioButton2Click (Sender: TObject);

begin

if radiobutton2.checked=true then k:=2;

end;

procedure TForm3. RadioButton3Click (Sender: TObject);

begin

if radiobutton3.checked=true then k:=3;

end;

procedure TForm3. Button2Click (Sender: TObject);

begin

if kk>5 then begin form3.visible:=false; form1.show; end else

begin if k=F[kk] then

begin

sum:=sum+5;

edit1.text:=inttostr(sum);

showmessage ('Правильно!=)');

end else showmessage ('Не правильно!=(');

kk:=kk+1; panel1. Caption:=A[kk];

radiobutton1.caption:=B[kk];

radiobutton2.caption:=C[kk];

radiobutton3.caption:=D[kk];

end;

end;

procedure TForm3.test1Click (Sender: TObject);

begin

kk:=kk+1; panel1. Caption:=A[1]; edit1. Text:='0';

radiobutton1.caption:=B[1];

radiobutton2.caption:=C[1];

radiobutton3.caption:=D[1];

end;

end.

unit Unit4;

interface

uses

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

StdCtrls, ExtCtrls, Grids, Menus;

type

TForm4 = class(TForm)

StringGrid1: TStringGrid;

Timer1: TTimer;

Panel1: TPanel;

RadioButton1: TRadioButton;

RadioButton2: TRadioButton;

RadioButton3: TRadioButton;

MainMenu1: TMainMenu;

test1: TMenuItem;

back1: TMenuItem;

Edit1: TEdit;

Button2: TButton;

procedure FormCreate (Sender: TObject);

procedure back1Click (Sender: TObject);

procedure Button1Click (Sender: TObject);

procedure RadioButton1Click (Sender: TObject);

procedure RadioButton2Click (Sender: TObject);

procedure RadioButton3Click (Sender: TObject);

procedure Button2Click (Sender: TObject);

procedure test1Click (Sender: TObject);

private

{Private declarations}

public A, B, C, D:array [1..50] of string; kk, k, sum:INTEGER;

F:array [1..50] of integer;

{Public declarations}

end;

var

Form4: TForm4;

implementation

uses Unit1, Unit3;

{$R *.DFM}

procedure TForm4. FormCreate (Sender: TObject);

begin

with stringgrid1 do begin kk:=0;

A[1]:=' Какой знак заменяет один и только один символ в имени в качестве шаблона для поиска файлов и папок?';

B[1]:='?';

C[1]:='*';

D[1]:='#';

F[1]:=1;

A[2]:='Укажите неправильное окончание фразы. Значки в открытом окне могут быть упорядочены…';

B[2]:='по размеру';

C[2]:='по дате';

D[2]:='по цвету';

F[2]:=3;

A[3]:=' Выберите неправильное окончание фразы. Свернуть окно можно…:';

B[3]:='с использованием контекстного меню строки заголовка';

C[3]:='используя контекстное меню Панели задач';

D[3]:='с помощью кнопки минимизации';

F[3]:=2;

A[4]:=' Модификация меню кнопки Пуск осуществляется за несколько шагов. Выделите лишний шаг';

B[4]:='Выбрать пункт «Панель задач и меню «Пуск», открыть вкладку «Пуск» ';

C[4]:='щелкнуть по кнопке «Пуск» и выбрать пункт Настройка';

D[4]:='Выполнить команду Панель управления / Настройка';

F[4]:=3;

A[5]:=' Выберите правильное окончание фразы. Файл - это…';

B[5]:='поименованная область памяти, расположенная на внешнем носителе (жесткий диск, дискета, CD)';

C[5]:='группа документов, объединенных по какому-то логическому принципу';

D[5]:='участок внешнего носителя, где хранятся данные';

F[5]:=1;

radiobutton1.checked:=false; radiobutton2.checked:=false; radiobutton3.checked:=false;

end; end;

procedure TForm4.back1Click (Sender: TObject);

begin

form1.show; form4. Visible:=false;

end;

procedure TForm4. Button1Click (Sender: TObject);

begin

kk:=kk+1; panel1. Caption:=A[kk];

radiobutton1.caption:=B[kk];

radiobutton2.caption:=C[kk];

radiobutton3.caption:=D[kk];

end;

procedure TForm4. RadioButton1Click (Sender: TObject);

begin

if radiobutton1.checked=true then k:=1;

end;

procedure TForm4. RadioButton2Click (Sender: TObject);

begin

if radiobutton2.checked=true then k:=2;

end;

procedure TForm4. RadioButton3Click (Sender: TObject);

begin

if radiobutton3.checked=true then k:=3;

end;

procedure TForm4. Button2Click (Sender: TObject);

begin

if kk>5 then begin form4.visible:=false; form1.show; end else

begin if k=F[kk] then

begin

sum:=sum+5;

edit1.text:=inttostr(sum);

showmessage ('Правильно!=)');

end else showmessage ('Не правильно!=(');

kk:=kk+1; panel1. Caption:=A[kk];

radiobutton1.caption:=B[kk];

radiobutton2.caption:=C[kk];

radiobutton3.caption:=D[kk];

end; end;

procedure TForm4.test1Click (Sender: TObject);

begin

kk:=kk+1; panel1. Caption:=A[1]; edit1. Text:='0';

radiobutton1.caption:=B[1];

radiobutton2.caption:=C[1];

radiobutton3.caption:=D[1];

end;

end.

Вывод

Delphi - чрезвычайно мощная система разработки прикладных программ для Windows. Она все увереннее завоевывает ведущие позиции в нашей стране, как среди профессиональных программистов, так и среди людей, никогда профессионально программированием не занимавшихся. Изначально среда разработки Delphi была предназначена исключительно для разработки приложений Microsoft Windows, затем был реализован также для платформ Linux (как Kylix). В сочетании с Borland Kylix, программисты Delphi могут создавать из одного исходного текста приложения и для Windows и для Linux, и это открывает новые возможности и увеличивает потенциальную отдачу от усилий, вложенных в изучение Delphi. В Delphi используется кросс-платформенная библиотека компонентов CLX и визуальные дизайнеры для создания высокопроизводительных приложений для Windows, которые повторной компиляцией можно легко превратить в приложения для Linux.

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

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

Список литературы

1. Анохина И.Ю., Кононенко И.Н./ Донецк, ДонНТУ, 2010.-120 с. «Конспект лекций и задания к лабораторным работам по курсу «Информатика и вычислительная техника» для студентов физико-металлургического факультета».

2. Архангельский А.Я./ Bel&Chen Co 2002. «100 компонентов общего назначения библиотеки Delphi 5».

3. Джон Матчо., Дэвид Р. Фолкнер./ М.:Бином, 1998 г. «Delphi» - пер. с англ.

программа delphi знание тест

Размещено на Allbest.ru


Подобные документы

  • Мониторинг операционной системы в современном мире. Программа для операционной системы Windows как средство для его проведения. Особенности разработки программы в Delphi 7.0. Описание работы программы, порядок выполняемых действий, и программная часть.

    курсовая работа [2,7 M], добавлен 02.12.2009

  • Разработка программы проверки знаний для тестирования студентов по программированию с кодом на языке Delphi. Проектирование визуального интерфейса и словесный алгоритм работы программы. Алгоритмы разработанных процедур и функций, инструкция пользователя.

    курсовая работа [506,5 K], добавлен 21.02.2011

  • Освоение языка программирования Delphi. Построение блок-схемы запуска главного таймера и основная логика программы. Использованные свойства и события Form, MediaPlayer, Timer, MainMenu. Запуск, пауза и остановка анимациии. Создание листинга программы.

    курсовая работа [771,9 K], добавлен 22.06.2014

  • Контроль знаний как форма педагогической деятельности. Особенности и классификация тестовых заданий. Разработка обучающе-контролирующей программы для контроля знаний обучающихся в среде программирования Borland Delphi 7.0 под управлением Windows XP.

    курсовая работа [172,5 K], добавлен 24.08.2016

  • Разработка программы тестирования студентов по MS PowerPoint с кодом на языке Delphi. Создание алгоритма для решения функциональных требований задачи. Описание переменных, вспомогательных процедур, входных и выходных данных для реализации программы.

    курсовая работа [1,5 M], добавлен 21.09.2010

  • Проектирование программы в среде Delphi для тестирования знаний студентов по программированию, с выводом оценки по окончанию тестирования. Разработка экранных форм и алгоритма программы. Описание программных модулей. Алгоритм процедуры BitBtn1Click.

    курсовая работа [365,0 K], добавлен 18.05.2013

  • Исследование алгоритмов и характеристик существующих программных систем аналогов для проверки знаний: Aму Life Test Gold, SunRav TestOfficePro. Разработка архитектуры программной системы. Проверка программы в нормальных условиях, руководство пользователя.

    курсовая работа [2,5 M], добавлен 17.06.2012

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

    дипломная работа [2,5 M], добавлен 29.12.2014

  • Создание Windows-приложения для проведения обучения и тестирования студентов по информационной безопасности. Алгоритм решения задачи, блок-схема работы программы, выбор языка программирования Delphi. Охрана труда программиста, обязанности пользователя.

    дипломная работа [4,8 M], добавлен 04.06.2013

  • Создание программы "MP3 Player", воспроизводящей аудио файлы формата MP3 для работы в операционной системе Windows с использованием языка программирования Delphi. Разработка интерфейса, алгоритма и документации к разработанному программному продукту.

    курсовая работа [625,0 K], добавлен 18.07.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.