Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Высокоуровневые методы информатики и программир...docx
Скачиваний:
25
Добавлен:
12.11.2019
Размер:
6.53 Mб
Скачать

Var AllowChange: Boolean); // изменение счетчика UpDown1

begin {присвоение текстовому полю номера счетчика}

edit2.text:=inttostr(updown1.position); {формирование цвета из значений интенсивностей красного, зеленого и синего составляющих цветов}

edit1.color:=rgb(scrollbar1.position,trackbar1.position,strtoint(edit2.text));

end;

procedure TForm1.ScrollBar1Change(Sender:TObject);// измен. ScrollBar1

begin edit4.text:=inttostr(scrollbar1.position);

edit1.color:=rgb(scrollbar1.position,trackbar1.position,strtoint(edit2.text));

end;

procedure TForm1.TrackBar1Change(Sender: TObject); // измен. TrackBar1

begin edit3.text:=inttostr(trackbar1.position);

edit1.color:=rgb(scrollbar1.position,trackbar1.position,strtoint(edit2.text));

end;

procedure TForm1.FormActivate(Sender: TObject); // активизация формы

begin edit2.text:=’0’; edit3.text:=’0’; edit4.text:=’0’; // обнуление

edit1.color:=rgb(scrollbar1.position,trackbar1.position,strtoint(edit2.text));

combobox1.text:=inttostr(1); Radiobutton1.checked:=true;

end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer); // перемещение указателя мышки и вывод линии

Begin {отображение текущих координат курсора на строке статуса}

StatusBar1.SimpleText:='X='+IntToStr(X)+ ',Y='+IntToStr(Y);

{установка ширины пера из выбранного значения списка}

Form1.Canvas.Pen.Width:=strtoint(ComboBox1.text);

if ssLeft in Shift then // нажата левая кнопка мыши

begin Form1.Canvas.Pen.Color:=Edit1.Color; // установка цвета пера

form1.canvas.lineto(x,y); {рисование линии } end;

if ssright in Shift then // нажата правая кнопка мыши

begin form1.canvas.pen.color:=form1.color; // цвет пера=цвету формы

form1.canvas.lineto(x,y);{рисование линии текущим цветом формы} end;

end;

procedure TForm1.Edit2Change(Sender: TObject); // изменение поля Edit2

begin edit1.color:=rgb(scrollbar1.position,trackbar1.position,strtoint(edit2.text));

end;

procedure TForm1.Edit1Click(Sender: TObject); // выбор цвета

begin if RadioButton1.Checked then Form1.Color:=Edit1.Color // цвет формы

else Canvas.Pen.Color:=Edit1.Color; { цвет пера } end;

procedureTForm1.FormMouseDown(Sender:TObject;Button: TMouseButton;Shift:TShiftState;X,Y: Integer); // нажатие кнопки мышки

begin {перевод курсора в текущие координаты мыши}

Form1.Canvas.MoveTo(X,Y); end;

procedure TForm2.Button1Click(Sender: TObject);//кнопка “Выход” Form2

begin form2.close; end;

8.1.5. Тестирование по арифметике (Delphi)

С оставим программу теcтирования знаний ученика по арифметике (рис. 8.1.5.1).

Рис. 8.1.5.1. Форма тестирования

Кнопкой Тест запускается процедура очистки полей ввода и меток; запускается счетчик времени; формируются случайные числа, которые выводятся в качестве операндов в виде меток Label1-Label8. В метке Label14 находится число секунд, оставшихся до окончания тестирования.

Кнопкой Проверить запускается процедура проверки правильности введенных ответов, и, если ответ ошибочен, оценка снижается на балл и выводится правильный ответ в виде метки (Label9-Label12). Счетчик времени останавливается, выводится оценка (Label13). Кноп­кой Выход завершается работа программы.

Приведем тексты процедур обработки событий.