вівторок, 13 грудня 2016 р.

Lazarus. Урок 6. Текст на формі за допомогою Label1.

Привіт. На черзі ще один компонент з палітри Standart - Label. На палітрі він являє собою кнопку у вигляді трьох перших літер латинського алфавіту - Abc. Його призначення відображати один або декілька рядків тексту на формі. 
Зверніть увагу, що в деяких ресурсах переклад цього компоненту є - напис, а в деяких - мітка. Я буду використовувати саме останній варіант - текстова мітка.
Для чого використовують текстові мітки? В основному це два напрямки - короткі підказки для інших компонентів або імітація кнопок. Прикладом можуть бути підказки для полів уведення тексту або текстова мітка яка може використовуватись як кнопка:

На малюку дизайнера форми розміщено три компоненти Label. Один з них відображає текст "Логін", інший - "Пароль", а третій, той, що позначений синім кольором, може бути використаний у якості кнопки. Але спочатку про властивості.

Властивості Label
Caption - основна властивість значення якої і відображається у компоненті.
Label1.Caption:='Password'; 
Слід зауважити, що дуже часто програмісти залишають значення властивості Caption порожнім. Для цього вони просто видаляють текст із поля праворуч Caption  або в обробнику події FormCreate записують код: Label1.Caption:='';
Color - колір фону мітки (не тексту, а саме фону); 
AutoSize - властивість яка змінюючи значення з TRUE на FALSE визначає чи буде властивість Width - автоматично змінювати своє значення в залежності від довжини тексту, що прописаний у властивості Caption.
WordWrap - значення TRUE на FALSE визначають, чи буде текст записаний в Caption переноситись на новий рядок. Властивість працює коли AutoSize = False, а ширина мітки менша за довжину тексту.
Hint - спливаюча підказка. Містить текст який буде показуватись при наведенні вказівника миші на текстову мітку. Працює в парі з властивістю ShowHint.

Font -  ще одна "основна" властивість, яка визначає властивості шрифту для мітки. Які властивості шрифту Ви оберете у вікні інспектора об’єктів чи зміните програмним шляхом такі й будуть відображатись у компоненті.

Основні властивості, що має властивість Font

Color - цього разу це вже колір самого тексту.
Label1.Font.Color:=clBlue;
Name - назва шрифту (схоже з тим як обирається шрифт у текстовому процесорі)
Label1.Font.Name:='Arial';
Size - розмір шрифту в пунктах (схоже з тим як обирається розмір у текстовому процесорі)
Height - розмір шрифту в пікселях.
                                                            Label1.Font.Size:=12;
Style - стиль шрифту. Пам’ятаєте призначення кнопок Ж, К, Ч у вікні текстового процесора?Lazarus має чотири стилі. жирний, курсив, закреслений, підкреслений. 
Label1.Font.Style:=Label1.Font.Style + [fsbold];
Label1.Font.Style:=Label1.Font.Style - [fsItalic];
Зверніть увагу, що значення стилю взято в квадратні дужки.

Звичайно слід зауважити, що мітка має й інші властивості вже відомі Вам з попередніх уроків.

Завдання 1 

  1. Створіть проект у якому додайте на форму сім кнопок та одну текстову мітку;
  2. Вкажіть текст для мітки - "Я - текстова мітка";
  3. Кнопки нехай мають назви "+", "-", "Ж", "К", "Ч", "З", "Arial";
  4. Створіть для кнопок обробники подій при яких мітка може збільшувати чи зменшувати розмір шрифту, змінювати стиль, та назву, а ще при натисканні кожної кнопки колір шрифту та колір фону мітки змінюються, але так, щоб текст добре читався.
Підказка до завдання

Завдання 2
  1. Створіть проект "Імітація гіперпосилання" у якому додайте до форми текстову мітку з текстом "http://teacher-typ.blogspot.com". 
  2. Створіть обробник події у якому при наведенні вказівника миші на мітку вона стає підкресленою і при цьому курсор стає у вигляді руки з вказівним пальцем. 
  3. Подумайте як зробити так, щоб коли курсор прибрати з мітки - вона перестала бути підкресленою.
  4. Створіть обробник події у якому після клацанні по текстовій мітці внизу форми з’явився напис - "Вчитися ніколи не пізно".
Успіхів. А якщо потрібні підказки, напишіть про це у коментарях.