на тему рефераты
 
Главная | Карта сайта
на тему рефераты
РАЗДЕЛЫ

на тему рефераты
ПАРТНЕРЫ

на тему рефераты
АЛФАВИТ
... А Б В Г Д Е Ж З И К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Э Ю Я

на тему рефераты
ПОИСК
Введите фамилию автора:


Курсовая работа: Создание проекта для тестирования знаний студентов по языку программирования Delphi по теме "Назначение и основные свойства палитры компонентов "Standard"


TabOrder

TabStop

Tag

Top

Width

События:

OnClick - (основной обработчик)

OnDblClick

OnEnter

OnExit

OnKeyDown

OnKeyPress

OnKeyUp

OnMouseDown

OnMouseMove

OnMouseUp

 

1.2.10 ComboBox

ComboBox - ещё один список для выбора, но выпадающий - на экране видна всего одна строка, а сам список появляется при нажатии на кнопку со стрелкой. Установив свойство Style в csDropDownList можно запретить ввод произвольного значения в ComboBox. Текст выбранной строки доступен в свойстве Text.

Свойства:

Color

Cursor

DropDownCount - высота (в элементах списка) списка при раскрытии.

Enabled

Font

Height

Hint

ItemIndex

Items - список строк, содержащихся в ComboBox. Редактируется в мини-редакторе.

Left

MaxLength - максимально возможное количество символов в поле ввода.

PopupMenu

ShowHint

Sorted

Style - стиль выпадающего списка. Чаще всего используются 3 значения этого свойства:

csDropDown - вы можете выбрать элемент из списка, но и ввод данных в текстовое поле возможен.

csDropDownList - вы можете только выбрать уже имеющийся элемент из списка. В текстовое поле ввести что-либо нельзя.

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

TabOrder

TabStop

Tag

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

Top

Width

События:

OnChange - (основной обработчик)

OnClick

OnDblClick

OnDropDown - происходит, когда пользователь вызывает список нажатием на кнопку.

OnEnter

OnExit

OnKeyDown

OnKeyPress

OnKeyUp

OnMouseDown

OnMouseMove

OnMouseUp

 

1.2.11 ScrollBar

ScrollBar - Полоса прокрутки. Вставляется внутрь компонента, у которого необходимо обеспечить прокрутку. Пригодится в том случае, если компонент не умещается на форме.

Standard - GroupBox

Группа. Компонент предназначен для группировки других компонентов внутри себя.

Свойства:

Align

Caption - заголовок группы.

Color

Cursor

Enabled

Font

Height

Hint

Left

PopupMenu

ShowHint

TabOrder

TabStop

Tag

Top

Width

События:

OnClick - (основной обработчик)

OnDblClick

OnEnter

OnExit

OnMouseDown

OnMouseMove

OnMouseUp


1.2.12 GroupBox

GroupBox - "контейнер" для компонент. Используется для объединения элементов в отдельные области. При перемещении GroupBox'а все компоненты, расположенные на нём, также перемещаются. Для размещения компонент в этом контейнере следует после выбора их на Палитры компонент щёлкнуть по самому контейнеру (а не по форме, как обычно). У GroupBox можно задать текст заголовка (свойство Caption).

1.2.13 RadioGroup

RadioGroup - группа из нескольких RadioButton'ов. Тексты строк задаются в свойстве Items. Номер выбранной строки - свойство ItemIndex (нумерация строк начинается с нуля!).

Внешне она похожа на смесь GroupBox и ListBox с радиокнопками. Внутри группы располагается список радиокнопок.

Свойства:

Align

Caption - заголовок группы.

Color

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

Cursor

Enabled

Font

Height

Hint

ItemIndex - индекс выделенной кнопки. Нумерация осуществляется с 0. -1 означает отсутствие выделенного элемента.

Items - список заголовков радиокнопок. Редактируется в мини-редакторе. Сами кнопки создаются автоматически.

Left

PopupMenu

ShowHint

TabOrder

TabStop

Tag

Top

Width

События:

OnClick - (основной обработчик)

OnEnter

OnExit

 

1.2.14 Panel

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

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

Свойства:

Align

Alignment

AutoSize - подгон размеров под содержимое панели. Под содержимым подразумеваются дочерние компоненты, а не текст.

BevelInner, BevelOuter - стиль внутренней и внешней рамок панели. Настраивая эти свойства, вы можете добиться приподнятого или вдавленного вида панели.

BevelWidth - ширина рамок панели в пикселях.

BorderStyle - стиль границы. Либо её нет, либо она есть!

BorderWidth - расстояние между внешней и внутренней рамкой в пикселях.

Caption - текст панели.

Color

Cursor

Enabled

Font

Height

Hint

Left

PopupMenu

ShowHint

TabOrder

TabStop

Tag

Top

Width

События:

OnClick - (основной обработчик)

OnDblClick

OnEnter

OnExit

OnMouseDown

OnMouseMove

OnMouseUp

1.2.15 ActionList

ActionList - компонент для создания и централизованного управления методами, ассоциируемыми с обработчиками событий компонентов.

Позволяет управлять действиями (Actions), которые привязываются к пунктам меню, кнопкам и т.д.


Глава 2. Разработка программы тестирования для контроля знаний по теме «компоненты палитры «standard»»

 

2.1 Цель и задачи

Цель - Автоматизация процесса контроля знаний учащихся по языку программирования delphi (палитры standard).

Задачи:

1.  Спроектировать информационную систему;

2.  Выбрать средства программирования;

3.  Разработать программу;

Необходимо:

a.  создать списки контрольных вопросов;

b.  создать процесс обработки результатов и выставления оценок;

c.  создать тестирующую программную оболочку.

В результате проведенного анализа существующих инструментальных средств разработки приложений был выбран продукт фирмы Borland Delphi 7.0, что обусловлено очень богатыми возможности среды программирования (работа с файлами, графикой, различными СУБД и т.д.) и простотой в использовании.

 

2.2 Требования

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

1.  Стандартизация заданий и условий их выполнения;

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

3.  Текст каждого теста должен быть ясным для понимания и не содержать "смысловых ловушек", если это заранее не спланировано;

4.  Ответы на приведённые тесты не должны являться "подсказкой" для решения других тестов;

5.  Тестовые блоки должны удовлетворять всем обще дидактическим принципам, т.е. научности, доступности, наглядности;

6.  Определенность.

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

7.  Простота. Формулировка заданий и ответы должны быть четкими и краткими. Показателем простоты является скорость выполнения задания.

8.  Однозначность. Задание должно иметь единственный правильный ответ – эталон.

Большое значение имеет и правильное составление сетки ответов, что, кстати, является наиболее важной и трудной частью композиции тестов. (Действительно, в идеале, каждый ответ должен быть составлен с учётом характерных ошибок учащегося, что позволяет диагностировать его знания и характер личности наиболее точно). Принято считать оптимальное число ответов - пять. В этом случае резко падает вероятность угадывания. ( При таком количестве ответов, вероятность угадывания составляет 20%).

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

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

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

3.  Ответы могут быть подобраны и таким образом, что все ответы являются правильными, но - частично! И лишь один ответ является полным, а следовательно и правильным. ( Обычно такая сетка ответов конструируется при проверке теоретической базы знаний).

 

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

1.  Листинг первой формы: Старт

unit Unit2;

interface

uses

{использованные библиотеки}

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

Dialogs, StdCtrls, XPMan, Menus, jpeg, ExtCtrls;

type

TForm2 = class(TForm)

Button2: TButton;

Button3: TButton;

MainMenu1: TMainMenu;

N1: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

N5: TMenuItem;

N6: TMenuItem;

N7: TMenuItem;

Image1: TImage;

Panel2: TPanel;

Memo1: TMemo;

Image2: TImage;

Image3: TImage;

{Описание процедур}

procedure Button3Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure N6Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form2: TForm2;

implementation

uses Unit1, Unit3, Unit4, Unit5;

{$R *.dfm}

//------------------------------------------------------------------

{выход}

procedure TForm2.Button3Click(Sender: TObject);

begin

application.Terminate;

end;

//--------------------------------------------------------------------

{отображение формы с тестом, скрытие главной формы}

procedure TForm2.Button2Click(Sender: TObject);

begin

form3.show;

form2.Hide;

end;

//------------------------------------------------------------------------

{отображение формы "об авторе", скрытие главной формы}

procedure TForm2.N6Click(Sender: TObject);

begin

AboutBox.show;

form2.Hide;

end;

end.

2.  Листинг второй формы: Тест

unit Unit3;

interface

uses

{библиотеки использованные при создании данного модуля}

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

Dialogs, StdCtrls, Menus, ExtCtrls, jpeg;

type

{Описание объектов имеющихся на форме}

TForm3 = class(TForm)

Button2: TButton;

Button3: TButton;

Panel1: TPanel;

RadioButton1: TRadioButton;

RadioButton2: TRadioButton;

RadioButton3: TRadioButton;

Button1: TButton;

Panel2: TPanel;

Label1: TLabel;

Edit1: TEdit;

Edit2: TEdit;

Edit3: TEdit;

Button4: TButton;

Edit4: TEdit;

Edit5: TEdit;

Edit6: TEdit;

Edit7: TEdit;

Memo1: TMemo;

Timer1: TTimer;

Image1: TImage;

Image2: TImage;

Label2: TLabel;

{Описание процедур}

procedure Button1Click(Sender: TObject);

procedure FormClose(Sender: TObject; var Action: TCloseAction);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

procedure RadioButton1Click(Sender: TObject);

procedure RadioButton2Click(Sender: TObject);

procedure RadioButton3Click(Sender: TObject);

procedure FormActivate(Sender: TObject);

procedure Button4Click(Sender: TObject);

procedure Timer1Timer(Sender: TObject);

procedure theend;

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form3: TForm3;

implementation

uses Unit2, Unit1;

//--------------------------------------------------------

{ввод глобальных переменных}

var

f:textfile;

s,d:string;

z,g,j,i:integer;

min,sek:byte;

{$R *.dfm}

//-----------------------------------------------------

{процедура для начала и выполнения теста}

procedure TForm3.Button1Click(Sender: TObject);

begin

if timer1.enabled=false then timer1.Enabled:=true;

if s<>''then

if z=strtoint(s)

then g:=g+1;

radiobutton1.visible:=true;

radiobutton2.visible:=true;

radiobutton3.visible:=true;

button2.visible:=true;

button1.caption:='Следующий вопрос';

{если не выбран не один ответ программа выдает соответствующее сообщение}

if (radiobutton1.Checked=false)

and (radiobutton2.Checked=false)

and (radiobutton3.Checked=false)

then showmessage ('Выберите один из вариантов ответа')

else

{иначе выдает следующий вопрос,очищает "радиобаттоны"

и считает кол-во вопросов}

begin

radiobutton1.Checked:=false;

radiobutton3.Checked:=false;

radiobutton2.Checked:=false;

i:=i+1;

if i=16 then theend

else

begin

{в этой процедуре переключателям присваиваются варианты ответов}

readln(f,s);

memo1.Text:=s;

readln(f,s);

radiobutton1.caption:=s;

readln(f,s);

radiobutton2.caption:=s;

readln(f,s);

radiobutton3.caption:=s;

readln(f,s);

radiobutton1.Checked:=false;

end;

end;

end;

//------------------------------------------------------

{процедура для коррекного закрытия программы}

procedure TForm3.FormClose(Sender: TObject; var Action: TCloseAction);

begin

form3.Button3.Click;

end;

//------------------------------------------------------------

{процедура перехода на главную форму}

procedure TForm3.Button2Click(Sender: TObject);

begin

{скрытие теста}

form3.Hide;

{открытие главной формы}

form2.show;

end;

//---------------------------------------------------------

{выход}

procedure TForm3.Button3Click(Sender: TObject);

begin

application.Terminate;

end;

//----------------------------------------------------------------

{проверка активности переключателя и присвоение ему определенного значения}

procedure TForm3.RadioButton1Click(Sender: TObject);

begin

z:=1;

{if radiobutton1.Checked then z:=1;

if radiobutton2.Checked then z:=2;

if radiobutton3.Checked then z:=3;}

end;

//----------------------------------------------------------------

{проверка активности переключателя и присвоение ему определенного значения}

procedure TForm3.RadioButton2Click(Sender: TObject);

begin

z:=2;

{if radiobutton1.Checked then z:=1;

if radiobutton2.Checked then z:=2;

if radiobutton3.Checked then z:=3; }

end;

//-----------------------------------------------------------------------

{проверка активности переключателя и присвоение ему определенного значения}

procedure TForm3.RadioButton3Click(Sender: TObject);

begin

z:=3;

{if radiobutton1.Checked then z:=1;

if radiobutton2.Checked then z:=2;

if radiobutton3.Checked then z:=3;}

end;

//-------------------------------------------------------------------------

{открытие файла с вопросами и ответами для теста на чтение}

procedure TForm3.FormActivate(Sender: TObject);

begin

assignfile(f,'Test.txt');

reset(f);

end;

//-------------------------------------------------------------------------

{процедура для повторного тестирования}

procedure TForm3.Button4Click(Sender: TObject);

begin

form3.Hide;

form2.Show;

form2.Hide;

form3.Show;

g:=0;

j:=0;

i:=0;

sek:=0;

min:=0;

radiobutton1.Checked:=true;

label1.Caption:='Тест';

button1.caption:='Начать тест';

Edit1.Visible:=false;

Edit2.Visible:=false;

Edit3.Visible:=false;

Edit4.Visible:=false;

Edit5.Visible:=false;

Edit6.Visible:=false;

Edit7.Visible:=false;

button1.Visible:=true;

button4.Visible:=false;

end;

//--------------------------------------------------------------------------

procedure TForm3.Timer1Timer(Sender: TObject);

begin

sek:=sek+1;

if sek=60 then begin

sek:=0;

min:=min+1;

end;

if min<10 then label2.Caption:='0'+inttostr(min)+':'

else label2.Caption:=inttostr(min)+':';

if sek<10 then label2.Caption:=label2.Caption+'0'+inttostr(sek)

else label2.Caption:=label2.Caption+inttostr(sek);

if min=8 then theend;

end;

procedure tform3.theend;

begin

timer1.Enabled:=false;

radiobutton1.Visible:=false;

radiobutton2.Visible:=false;

radiobutton3.Visible:=false;

memo1.Text:='РЕЗУЛЬТАТ ТЕСТИРОВАНИЯ';

Edit1.Visible:=True;

Edit2.Visible:=True;

Edit2.Text:=inttostr(i-1);

Edit3.Visible:=True;

Edit4.Visible:=True;

Edit5.Visible:=True;

Edit5.Text:=inttostr(g);

Edit6.Visible:=True;

Edit7.Visible:=True;

Edit7.Text:=inttostr(i-g-1);

closefile(f);

button1.Visible:=false;

button4.Visible:=true;

end;

end.

3.  Листинг третьей формы: Об авторе

unit Unit4;

interface

uses Windows, SysUtils, Classes, Graphics, Forms, Controls, StdCtrls,

Buttons, ExtCtrls, jpeg;

type

TAboutBox = class(TForm)

OKButton: TButton;

Panel2: TPanel;

Memo1: TMemo;

Image1: TImage;

Image2: TImage;

procedure OKButtonClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

AboutBox: TAboutBox;

implementation

uses Unit2;

{$R *.dfm}

procedure TAboutBox.OKButtonClick(Sender: TObject);

{переход на главную форму и скрытие окна "об авторе"}

begin

AboutBox.Hide;

form2.show;

end;

end.

2.4 Тестирование программы

В ходе тестирования были проверены требования к программному продукту (тест).

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

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

Пояснение: жирным шрифтом выделены правильные ответы.

Вопрос 1 ответ 2 ответ 3 ответ
1 Название компонента который создает текстовую метку (надпись) на форме? Button. Panel.

Label.

2 Контейнер для компонентов, по своим свойствам похожий на форму (укажите компонент)?

Frames.

Memo. Button
3 Простая командная кнопка (укажите компонент)? Memo. Items.

Button.

4 Список строк с возможностью выбора нескольких из них (укажите компонент)? TImageList

ListBox

ActionList
5 компонент который может служить либо для отрисовки текста (встроенная возможность) либо контейнером для других компонентов? GroupBox Panel Bitmap
6 Компонент для создания и централизованного управления методами, ассоциируемыми с обработчиками событий компонентов? Sorted.

ActionList.

Columns.
7 как выглядит компонент MainMenu после помещения его на форму?

В виде значка

В виде главного меню в верхней части формы Компонент не отоброжается
8 чем различаются компоненты Label и Edit? Максимальным размером вводимого текста.

Текст в Label нельзя редактировать во время работы программы.

Компонент Edit служит для ввода чисел.
9 чем различаются компоненты CheckBox и RadioButton? CheckBox не содержит пояснительной части RadioButton не содержит поля выбора

RadioButton исключает выбор двух значений в одном блоке переключателей

10 Свойство ReadOnly позволяет? Настроить регистр вводимых символов Настроить содержимое текстового поля

запретить редактирование текста в поле

11 Как задается содержимое компонента Memo при создании программы? Вводится в специальном окне

Вводится в отдельном окне, так и в редакторе кода

Вводится в редакторе кода
12 как отображается компонент PopupMenu после помещения его на форму?

В виде значка

В виде контейнера Компонент не отоброжается
13 Контекстное меню (укажите компонент)? Memo

popupmenu

Items
14 Однострочное текстовое поле для ввода данных (укажите компонент)? Text Memo Edit
15 Многострочное текстовое поле (укажите компонент)? Frames
Memo
Align

Страницы: 1, 2, 3


на тему рефераты
НОВОСТИ на тему рефераты
на тему рефераты
ВХОД на тему рефераты
Логин:
Пароль:
регистрация
забыли пароль?

на тему рефераты    
на тему рефераты
ТЕГИ на тему рефераты

Рефераты бесплатно, реферат бесплатно, курсовые работы, реферат, доклады, рефераты, рефераты скачать, рефераты на тему, сочинения, курсовые, дипломы, научные работы и многое другое.


Copyright © 2012 г.
При использовании материалов - ссылка на сайт обязательна.