воскресенье, 16 февраля 2020 г.

Проект "Тест"

Завдання:

Створити тест, який складається з 4-х питань і кожне запитання різного типу:

  1. обрати варіант з розкриваючого списку, 
  2. обрати одну вірну відповідь, 
  3. обрати декілька вірних відповідей і 
  4. вписати відповідь в поле

Технологічна картка-інструкція

1. Розмістіть на формі 4 елемента TGroupBox

Панель TGroupBox - це контейнер з рамкою і написом, який об'єднує групу пов'язаних органів управління, таких як радіокнопки TRadioButton, індикатори TCheckBox і т.д.


Кожному елементу дайте назву Завдання 1-4 (або Питання 1-4) і отформатуйте шрифт


Бажано щоб елементи були однакові за розміром


2. В кожному елементі TGroupBox є елемент TLabel, який містить текст запитання


3. Якщо питання містить картинку, нагадуємо як працювати з елементом TImage



Властивість Stretch зі значенням True дає можливість розтягнути картинку під розмір елементу TImage


4. Питання, яке містить вибір відповіді з розкриваючого списку

TComboBox - поєднання списку і однорядкового текстового поля, яке дозволяє користувачеві ввести значення вручну або вибрати зі списку.



Ось як це буде виглядати при перегляді


5. Питання, яке містить одну вірну відповідь

RadioButton - перемикач. 



або TRadioGroup - це панель, яка містить радіокнопки. З радіокнопок може бути включена тільки одна.


6. Питання, яке містить декілька вірних відповідей (прапорець)

TCheckBox - прапорець



або TCheckGroup - елемент для угруповання схожих за змістом компонентів


7. Зовнішній вигляд проекту тепер має бути таким



Перевіримо його роботу


Обрати відповіді то ми можемо, а вірно все відмітили чи ні, не відомо

8. Додаємо кнопку перевірки і поле для оцінки


Тепер інша справа


9. Ось і код програми



var
  Form1: TForm1;
  n: integer; 

procedure TForm1.FormCreate(Sender: TObject);
begin
   n:=1; 
end; 

procedure TForm1.Button1Click(Sender: TObject);
begin
  if ComboBox1.Text='Корифеїв' then n:=n+2;
  if RadioButton5.Checked=true then n:=n+3;
  if CheckBox2.Checked=true then n:=n+1;
  if CheckBox3.Checked=true then n:=n+1;
  if CheckBox5.Checked=true then n:=n+1;
  if CheckBox1.Checked=true then n:=n-1; 
  if CheckBox4.Checked=true then n:=n-1;  
  if Edit1.Text='1867' then n:=n+3;
  if n<1 then n:=1;    
  Edit2.Text:=IntToStr(n);
end;              

Перевіримо, чи працюють інші оцінки


10. А це код програми, яка використовує TRadioGroup та TCheckGroup 


procedure TForm1.Button1Click(Sender: TObject);
begin
  if ComboBox1.Text='Корифеїв' then n:=n+2;
  if RadioGroup1.ItemIndex=4 then n:=n+3;
  if CheckGroup1.Checked[1]=True then n:=n+1;
  if CheckGroup1.Checked[2]=True then n:=n+1;
  if CheckGroup1.Checked[4]=True then n:=n+1;
  if CheckGroup1.Checked[0]=True then n:=n-1;  
  if CheckGroup1.Checked[3]=True then n:=n-1;  
  if Edit1.Text='1867' then n:=n+3;
  if n<1 then n:=1;   
  Edit2.Text:=IntToStr(n);
end;  

Комментариев нет:

Отправить комментарий