Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Л.р. №3 (Delphi).doc
Скачиваний:
2
Добавлен:
06.11.2018
Размер:
493.06 Кб
Скачать

Лабораторна робота №3 Тема: Розробка циклічних програм.

Мета роботи:

  • Навчитись використовувати візуальні компоненти сторінки палітри Samples: TSpinEdit, сторінки Standard: TEdit, TButton, TLabel, Tmemo, сторінки Additional: TBitBtn, TLabeledEdit, TStringGrid та сторінки Win 32: TRichEdit, TUpDown.

  • Вивчити основні властивості та методи роботи з компонентами панелі Additional, Standard та Samples.

Теоретичні відомості:

При розробці програм для даної лабораторної роботи пропонується використати наступні компоненти: TEdit, TLabel, TButton, TBitBtn, TRadioButton, TRadioGroup, TGroupBox, TCheckBox, TShape, TLabeledEdit, TSpinEdit, TUpDown, TStringGrid, TMemo, TRichEdit. Нижче наведено призначення та основні властивості компонент, які не розглядалися у передніх лабораторних роботах.

Компоненти TSpinEdit та TUpDown.

Призначення:

TSpinEdit – кнопка-лічильник з вікном редагування. Дана компонента забезпечує ведення цілих чисел. Майже те саме, що і комбінація TEdit та TUpDown.

Основні властивості:

Компонента TSpinEdit являє собою поєднання TEdit та TUpDown, оформлене як окремий тип компонента.

Основна властивість компоненти TUpDown Associate пов’язує кнопки з стрілочками із певною віконною компонентою, зазвичай з TEdit, при цьому у властивості компоненти TUpDown Associate вибирається вікно редагування Edit.

Властивість AlignButton компоненти TUpDown, яке може приймати значення udLeft або udRight, визначає, де будуть розміщуватися кнопки відносно вікна редагування, зліва чи справа.

Властивість Orientation, яка може приймати значення udHorizontal або udVertical, визначає горизонтальне або вертикальне розташування кнопок.

Властивість ArrowKeys при значенні true дозволяє керувати кнопками TUpDown за допомогою клавіш клавіатури зі стрілочками.

Властивість Thousands визначає наявність чи відсутність розділяючого пробілу між кожними трьома цифрами розрядів числа, що вводиться.

Властивості Min та Мах компоненти TUpDown задають відповідно мінімальне та максимальне значення чисел.

Властивість Increment задає приріст числа при кожному натисканні на кнопку TUpDown.

Властивість Position є основною властивість компоненти TUpDown та визначає поточне значення числа.

Властивість Wrap визначає, як поводить себе компонента при досягненні максимального чи мінімального значення (якщо Wrap = false, то при збільшенні або зменшенні числа до максимального або мінімального значення це число фіксується на певному значенні і натискання кнопки, що реалізує намагання збільшити максимальне число або зменшити мінімальне, ні до чого не приводять. Якщо Wrap = true, то спроба збільшити максимальне число приводить до скидання на мінімальне значення. Аналогічно, спроба зменшити мінімальне число приводить до його скидання на максимальне значення.

Якщо в компоненті TEdit, що пов’язується із TUpDown, задавати властивість ReadOnly рівною false, то користувач зможе задавати значення не користуючись кнопками зі стрілочками, що є зручним, коли необхідне значення далеке від вказаного по замовчуванню, а крок приросту Increment в TUpDown малий.

Головним недоліком компоненти TUpDown та відповідно пов’язаною з нею компонентою TEdit є можливість помилкового введення не цифр, а інших символів. Таким чином потрібно забезпечити правильність введення даних (див. Лабораторна робота №1), або використовувати компоненту TSpinEdit, в якій допускаються при введенні тільки числа.

Властивості компоненти TSpinEdit схожі на розглянуті вище, мають тільки інші імена: властивість Min, Max, Position називаються відповідно MinValue, MaxValue, Value. В цілому компонента TSpinEdit у багатьох відношення краща, ніж просте поєднання TUpDown та TEdit, за виключенням, коли вимагаються якісь із описаних вище властивостей TUpDown.

Компонента TStringGrid

Призначення:

Таблиця стрічок. Відображення тестової інформації у вигляді таблиці з можливістю переміщуватися по стрічках та стовпчиках та можливістю здійснювати вибір.

Основні властивості:

Компонента TStringGrid це таблиця, що містить стрічки. Дані в таблиці можуть бути тільки для читання або для редагування. Таблиця може мати смуги прокрутки, можна задати заголовки стовпчиків та стрічок, що постійно наявні у вікні компоненти. Кожній лунці може бути поставлений у відповідність деякий об’єкт. Компонента TStringGrid призначена першу чергу для відображення таблиць текстової інформації, але в свою чергу може містити і графічну інформацію.

Основні властивості компоненти, що визначають текст, який відображається:

  • Cells[ACol, ARow: Integer]: string – стрічка, що міститься в лунці із індексами стовпчика ACol та стрічки ARow;

  • Cols[Index: Integer]: TStrings – список стрічок, що містяться у стовпчику із індексом Index;

  • Rows[Index: Integer]: TStrings – список стрічок, що містяться у стрічці із індексом Index;

  • Objects [ACol, ARow: Integer]:TObject – об’єкт, що пов’язаний зі стрічкою, який міститься у лунці з індексами стовпчика ACol та стрічки ARow.

Всі ці властивості доступні під час виконання. Задавати тексти можна програмно або по окремим лункам, або відразу по стовпчикам та стрічкам за допомогою методів класу TStrings.

Властивість ColCount і RowCount визначають відповідно кількість стовпчиків та стрічок.

Властивості FixedCols та FixedRowsкількість фіксованих стовпчиків та стрічок, що не прокручуються. Колір фону фіксованих лунок визначається властивістю FixedColor.

Властивість ScrollBars визначає наявність в таблиці смуг прокручування.

Властивість Options є множиною, що визначає багато властивостей таблиці: наявність розділяючи вертикальних та горизонтальних ліній у фіксованих (goFixedVertLine та goFixedHorzLine) в нефіксованих (goVertLine та goHorzLine) лунках, можливість для користувача змінювати за допомогою миші розміри стовпчиків та стрічок (goColSizing та goRowSizing), переміщувати стовпчики та стрічки (goColMoving та goRowMoving), можливість редагувати вміст таблиці (goEditing). В основному компонента TStringGrid використовується для вибору користувачем певних значень, що відображені в лунках. Властивості Col та Row показують індекси стовпчика та стрічки виділеної лунки. Надається також можливість виділення користувачем множини лунок, стрічок та стовпчиків. Серед множини подій компоненти TStringGrid слід відмітити подію OnSelectCell, що виникає в момент вибору лунки користувачем.

Компоненти TMemo, TRichEdit:

Призначення:

Вікно редагування багатострічкового тексту (TMemo), вікно редагування багатострічкового тексту у форматі RTF (TRichEdit). Використовується для введення та відображення багато стрічкового тексту.

Основні властивості:

В компоненті TMemo формат (шрифт, атрибути вирівнювання) однакові для всього тексту та визначаються властивістю Font. Компонента TRichEdit працює із текстом в форматі RTF. При бажанні змінити атрибути тексту можна задати властивість SelAttributes. Дана властивість типу TTextAttributes, що в свою чергу має властивості: Color (колір), Name (і’мя шрифту), Size (розмір), Style (стиль) та ряд інших.

Наприклад, напишемо програму, яка дозволяла користувачу міняти атрибути тексту. Введемо на формі компоненти TRichEdit, діалог вибору шрифту TFontDialog та кнопку TButton. В процедуру обробки події OnClick введемо наступний текст: