Доповнити в Знавець Коду ( Code Insight ) шаблон для оператору цикла з
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

параметром - 1:

For |: = downto do       // Ctrl+J - виклик знавця коду

{ Tools → Edition Option → Code Insight → Code Templates → натиснути Add у вікні для виводу нового шаблону shotcut + name в його короткий опис Description набираємо текст

шаблону, встановлюємо " │ " перед " : =" → зберігаємо та виходимо }.

12.Видалити шаблон із Знавця Коду { Tools → Editer Option → Code Insight → знайти шаблон і . Del } .

13. Змінити затримку автоматичного спрацьовування Code Insight на максимум (Delay) { Tools → Edition Option → Code Insight → Delay → повзунок на max = 1.5 sec → Ok } .

Контрольні питання:

1. Налагодження палітри компонентів.

2. Налагодження панелі інструментів.

3. Налагодження меню Tools.

4. Корегування знавця коду.


Тема: Введення й обробка елементів масиву

 

І Визначити конкретне значення елементів масиву ми можемо з використанням компонентів сторінки Standard Edit ( вікно редагування), при цьому на вихідній формі необхідно передбачити таку кількість віконець Edit, скільки елементів має масив.

Edit . Text - інформація символьного типу, для обробки числових значень необхідне перетворення типів:

· StrToFloat , StrToInt – перетворення символьного в числове;

· FloatToStr , IntToStr – зворотне перетворення для висновку результату.

При такому заданні масиву необхідно заздалегідь визначати і чітко фіксувати кількість елементів ( розмірність масиву).

ІІ При великій розмірності масиву незручно використовувати величезну кількість вікон редагування. Масив можна вводити по рядкам в таблицю елементів, де кожне число знаходитися в окремому клітинці. При цьому елементи розділяються пробілом. Компонент StringGrid знаходитися на сторінці Add i ti onal .

Властивості компонента String Grid :

1. Name – ім'я, що використовується в програмі для звернення до об'єкта;

2. ColCount – кількість стовпчиків (стовпців);

3. RowCount – кількість рядків;

4. Cells – ім'я масиву ,відповідного таблиці.

5. FixedCols – кількість фіксованих зліва стовпчиків;

6. FixedRows – кількість фіксованих зверху рядків;

7. Options . goEditing – можливість редагування вмісту клітинок таблиці;

8. Options . goTab – можливість переходу до наступного елементу клавішею “Tab”;

9. DefaultColWidth – визначає ширину стовпчиків таблиці;

10. DefaultRowWidth – висота рядків таблиці.

11. OptionsGoAlwaysShowEditor – при значенні False, після набору тексту необхідно натиснути F2, чи клацнути миша при значенні True – редагування виконується автоматично.

ІІІ . Використання компонента Мемо дозволяє вводити в масив елементи символьного типу у вигляді рядків тексту.

Властивості Memo:

Name - - ім'я компонента, що використовується в тексті програми;

Lines – номер рядка, номерація починається з нуля (номер задається в «[ ]»);

Text – символьна інформація, що визначає значення елементів масиву.

 

IV . Введення даних у масив з використанням списку List Box (Standard).

Властивості ListBox :

Items – елементи списку;

ItemIndex – номер обраного елемента списку ( на початку роботи «0»).

Список може бути сформований під час створення форми додатка, чи динамічно під час роботи програми.

У вікні Object Insp ector вибрати властивості Items і клацнути на кнопці....., відкривається діалогове вікно редактора списку рядків ( StringList Editor). Кожен елемент набирати з нового рядка і завершувати «Enter». Після введення всіх елементів списку натиснути «ОК».

Процедура обробки події OnKeyPress

( перевірка коректності введення цілих чисел)

Procedure Tform1.StringGridKeyPress (Sender:Tobject; Var Key : char );


Begin

Case Key of

#8,’0’..’9’ : ; // Цифри і клавіша <Back Space>

#13; // Клавіша <Enter>

If StringGrid1. Col < StringGrid1.ColCount – 1

Then StringGrid . co l : = StringGrid1.col + 1

Else key : = Chr(0); // i нші символи заборонені

End;

End;

Перевірка коректності введення дійсних чисел

Procedure Tform1.StringGridKeyPress (Sender:Tobject; Var Key : char );

Begin

Case Key of

#8,’0’..’9’ : ; // Цифри і клавіша <Back Space>

#13; // Клавіша <Enter>

If StringGrid1. Col < StringGrid1.ColCount – 1

Then StringGrid . co l : = StringGrid1.col + 1;

‘. ‘ , ’,’ : // Роздільник цілої і дробової частин числа

Begin

If Key <> DecimalSeparator then

Key : = DecimalSeparator ; // Замінимо роздільник на припустимий

If Pos ( StringGrid1. cells [ StringGrid . Col , 0] , DecemalSeparator ) <> 0

Then Key : = chr ( 0); // Заборона введення повторного роздільника

End;

‘ – ‘ : // мінус можна ввести тільки першим символом

// тобто коли комірка порожня

If Length ( StringGrid1.Cells [ StringGrid1 . Col , 0 ] ) <> 0

then Key : = Chr ( 0 )

else / / Інші символи заборонені

key : = Chr (0);

end; { end case}

end ; { end proc }



Лабораторна робота № 12.

Тема: Обробка двовимірного масиву.

Мета: Освоїти методи обробки масиву.

Постановка задачі: Підрахувати середній бал студентів за підсумками сесії. За запитом виводити середній бал по всій групі.

 

Хід роботи:

I. Відкрити новий додаток. Дати заголовок Form1.Caption ― 'Підсумки сесії':

Розмістити на формі:

1) Зі сторінки Standard à мітку Label1; властивість Caption ― 'Підсумки сесії по групі 37_';

2) Зі сторінки Additional à таблицю рядків StringGrid1; встановити властивості:

ColCount ― 5 {Кількість стовпців};

RowCount ― 5 {Кількість рядків};

FixedCols ― 0 {Кількість фіксованих стовпців};

FixedRows ― 1 {Кількість фіксованих рядків};

Name ― StringGrid1 ( або SG1 );

Options . goEditing ― True {Редагування клітинок таблиці};

 

 

Options.goTab ― True;

3) Зі сторінки Standard à прапорець CheckBox; встановити його властивість Caption ― 'Середній бал по групі';

4) Зі сторінки Standard à кнопку Button1; встановити властивість Caption ― 'Пуск';

5) Зі сторінки Standard для виведення середнього бала по групі à Label2 (чи Panel1); Caption ― ' ' (очистити).

II. Для початкового програмного заповнення заголовка таблиці обробити подію активації форми:

Procedure TForm1.FormActivate(Sender: TObject);

begin

StringGrid1.Cells[0,0]:=' Ф И О';

StringGrid1.Cells[1,0]:=' Програм.';

StringGrid1.Cells[2,0]:=' Мат.Ан.';

StringGrid1.Cells[3,0]:=' Диф.Ур.';

StringGrid1.Cells[4,0]:=' Ср.Бал';

end;

III. Основну обробку і введення елементів масиву (при заповненні таблиці) оформити як процедуру обробки події натискання клавіші "Пуск":

procedure TForm1.Button1Click(Sender: TObject);

var

a:array [1..5,1..10] of integer; {робочий масив}

S,                             {середній бал студента}

SR:real;                    {середній бал по групі}

i,                              {лічильник стовпців}

j:integer;                   {лічильник рядків}

begin

SR:=0;

For j:=1 to SG1.RowCount-1 do {цикл по рядках}

begin

S:=0;

For і:=1 to 3 do {цикл по стовпцях}

begin

a[i,j]:=StrToInt(SG1.Cells[i,j]);

S:=S+a[i,j];

end; {For і}

S:=S/3; {підрахунок середнього балу студента}

SG1.Cells[4,j] := FloatToStr(s);

SR:=SR+S;

end; {For j}

{аналіз значення прапорця - обчислення середнього бала по групі}

If CheckBox1.State=cbChecked then

begin

SR:=SR/(SG1.RowCount-1);

Label2.Caption:=FloatToStr(SR);

end; {Then}

end; {Proc}

 

IV. Виконати перевірку коректності введення даних процедурою OnKeyPressed. У випадку помилки вивести повідомлення

"Дані не входять у діапазон [1..5]" і повторити введення.

V. Перевірити, чи введені дані в клітинку, якщо ні ― повідомлення на екран і корегування таблиці.

Заповнити початковий масив випадковими числами ( RANDOM ).

 

Контрольні питання:

1. Компонент StringGrid, його властивості і події.

2. Компонент CheckBox, його властивості і події.

3. Методи введення й обробки елементів масиву.

4. Перевірка коректності введення даних.


Лабораторна робота №13

 

Тема: ”Анкета студента”

Мета: Використання зображення (фото, картинки), створення ехе-файла.

 

Постановка задачі:

Розробити додаток із зображеннями, що перекриваються.

    Хід роботи:

I . Конструювання форми:

1. Відкрити новий додаток. Дати заголовок Form1.Caption – ‘Анкета студента’

2. Вибрати піктограму (іконку) для запуску задачі {Icon ®

® Load (завантажити)® вибираємо зі списку файлів *.ico ®

переглядаємо ® відкрити ® ОК ® іконка в системному рядку форми змінилася на обрану}

3. За бажанням змінити колір, фон, стиль, розмір форми.

4. Забрати кнопки системного меню форми ( ) {Borderconst ® biSystemMenu; biMinimize; biMaximize установити False }

На формі розмістити:

5. Зі сторінки Standard – мітку Label1; властивість Caption – 'Студент КТРЕ'

6. Зі сторінки Standard – поле Мемо (чи вікно Edit, чи Label) – для введення анкетних даних.

7. Розмістити 2 кнопки Button (з Standard)

Установити :

Caption.Button1 – ‘портретнe фото’

Caption.Button2 – ‘художнє фото’

8. Для коректного виходу з задачі (див.п.4) використовувати кнопку BitBtn зі сторінки палітри компонентів Additional. Установити властивість Kind(сорт) – вид кнопки на bkClose ® на кнопці з'явилася піктограма і напис Close.

9.На кнопці виведемо спливаючу підказку – “натяк”:

{властивість Hint – (це текст підказки, що з'являється при наведенні покажчика миші)'вихід із задачі’; властивість ShowHint – (показувати/непоказувати підказку) ® установити True}

10.Розмістити на формі об'єкт Image1 («картинка») зі сторінки Additional.

11.Уставити своє чи фото малюнок: {Image1 ® Picture ® вікно редактора Picture ® Load ® вибираємо файл із *.jpg; *.bmp; *.ico; *.wmf ® OK ® картинка у вікні}

12.Привести розмір зображення до заданих розмірів об'єкта Image: {властивість Stretch® TRUE }

13.Аналогічно п.п.10-13 вибрати 2-і фото (картинку), наклавши її цілком на першу картинку і сполучивши розміри.

II. Розробка кодів ( процедур ):

procedure TForm1.Button1Click(Sender: TObject);

begin

Image1.Visible:=true; { портретне фото візуальне }

Image2.Visible:=false; { художнє фото не візуальне }

button1.Visible:=false; {кнопка 1 не візуальна}

button2.Visible:=true; {кнопка 2 візуальна}

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

Image2.Visible:=true; { портретне фото візуальне }

Image1.Visible:=false; { художнє фото не візуальне }

button2.Visible:=false; {кнопка 2 не візуальна}

button1.Visible:=true; {кнопка 1 візуальна}

end;

procedure TForm1.BitBtn1Click(Sender: TObject);

begin

close;

end;

 

III. Зберегти розроблений додаток :

{ гол . меню ® File ® Save all ( зберегти усі ) чи Shift+Ctrl+S}

чи для іншої папки:

{ гол . меню ® File ® Save as…(SaveUnitas…) ® шлях ®ім ' я Anketa.pas.

гол . меню ® Save Project as… ® шлях ® ім ' я Foto.dpr}

У в а г а!!!

Файли проекту і тексту програми повинні мати різні імена.

 

IV. Створити ехе-файл проекту:

1. {гол.меню ® Project ® Build all (сконструювати все)}

2. Закрити Delphi:

Запустити задачу як ехе-файл через піктограму

 

КОНТРОЛЬНІ ПИТАННЯ :

1. Властивості компонента Image.

2. Властивості і події компонента BitBtn.

3. Створення ехе-файла.

4. Вибір піктограми задачі

5. Спливаюча підказка.




Лабораторна робота № 14

Дата: 2019-05-29, просмотров: 165.