Вставте на форму компонент RichEdit
з вкладки Win32
і змініть деякі його
властивості (вікно інспектора об’єкта):Name
txt
Align
alClient(зайняти всю вільну область)
Lines
очистити
Додавання малюнків до пунктів головного меню.
Один раз клацніть на компонент MainMenu1 і в інспекторі об’єктів в полі Images виберіть ImageList1.
Зайдіть в редактор головного меню (клацніть 2 рази по значку головного меню) і виділіть потрібний пункт. У властивостях цього пункту знайдіть поле ImageIndex і виберіть потрібний малюнок. Увага! В редакторі головного меню ви не побачите малюнки. Їх можна побачити тільки при закритому редакторі меню або при запущеній програмі.
Запустіть програму, клацнувши на значку
або натиснувши F9.
Програма
не буде виконувати ніяких дій так, як
ми створили тільки інтерфейсну частину
(оболонку). В наступному пункті ми
перейдемо до створення програмної
частини. Закрийте вікно запущеної
програми, ви знову в редакторі.
Створення програмної частини.
Перш за все нам знадобляться ще 3 компонента: OpenDialog
,
SaveDialog
,
FontDialog
.
Ці всі компоненти
знаходяться на вкладці Dialogs.
Вставте на форму по
одному з цих компонентів..Змініть назви цих компонентів для облегшення написання коду. В полі Name властивостей компонента змініть ім’я: OpenDialog1→OD, SaveDialog1→SD, FontDialog1→FD.
Запрограмуйте кнопки, для цього два рази клацніть по відповідній кнопці або виділіть кнопку, і в інспекторі об’єктів, перейдіть на вкладку Events і в пустому полі навпроти напису onClick два рази клацніть мишею.
Два рази клацніть на кнопку зі значком
.
В створеній процедурі між begin
end;
впишіть код:
txt.Lines.Clear;//очищаємо
поля від тексту
txt.SelAttributes:=Txt.DefAttributes;
// встановлюємо стандартні атрибутиЗапрограмуйте кожну наступну кнопку використовуючи таблицю:
Значок
Дія
Код
Зберегти файл
//Якщо користувач ввів ім’я файлу і натиснув Ок то
//зберігаємо файл
if sd.Execute then txt.Lines.SaveToFile(sd.FileName);
Відкрити файл
//Якщо користувач вибрав файл і натиснув ОК то відкриваємо //файл
txt.SelAttributes:=txt.DefAttributes;
if od.Execute then txt.Lines.LoadFromFile(od.FileName);
Закрити програму
MainForm.Close;
Вирізати
txt.CutToClipboard;
Копіювати
txt.CopyToClipboard;
Вставити
txt.PasteFromClipboard;
Властивості шрифту
//Загружаємо данні настройки шрифту
fd.Font.Assign(txt.SelAttributes);
//Якщо користувач змінив настройки шрифту і натиснув Ок то
//змінюємо настройки шрифту
if fd.Execute then txt.SelAttributes.Assign(fd.Font);
Вирівнювання по лівому краю
txt.Paragraph.Alignment:=taLeftJustify;
Вирівнювання по центру
txt.Paragraph.Alignment:=taCenter;
Вирівнювання по правому краю
txt.Paragraph.Alignment:=taRightJustify;
Звичайний текст
txt.SelAttributes:=txt.DefAttributes;
Жирний текст
txt.SelAttributes.Style:=txt.SelAttributes.Style+[fsBold];
Нахилений текст
txt.SelAttributes.Style:=txt.SelAttributes.Style+[fsItalic];
Підкреслений текст
txt.SelAttributes.Style:=txt.SelAttributes.Style+[fsunderline];
Запустіть програму і перевірте роботу всіх кнопок. Якщо деякі з них працюють невірно або зовсім не працюють перевірте правильність написання коду.
Тепер потрібно запрограмувати кнопки головного меню. Зазвичай на панель інструментів виносять кнопки з головного меню, які часто використовуються. Щоб повторно не дублювати код (так, як всі кнопки на панелі інструментів є в головному меню) будимо використовувати вже написані процедури.
Приклад вибору процедури для кнопки (новий документ).
Перш за все треба взнати яку процедуру використовує пункт меню. Для цього виділяємо кнопку на панелі інструментів, клацнувши по ній один раз і в вікні інспектора об’єктів, на вкладці Events навпроти onClick дивимось і запам’ятовуємо назву процедури яка оброблює натискання на кнопку (мал. 7). Можна навести курсор миші на потрібну кнопку і запам’ятати назву процедури.
Мал. 7
В даному випадку ця процедура називається ToolButton15Click.
Відкрийте вікно редактора головного меню (натисніть 2 рази на значок
).
В редакторі виберіть відповідну кнопку
і перейдіть в вікно інспектора об’єктів
на вкладку Events.Перейдіть в поле onClick і виберіть потрібну процедуру в списку (в даному випадку це ToolButton15Click) Мал. 8.
Мал. 8.
Виконайте такі ж дії для кожного пункту меню.
В головному меню є ще 2 кнопки яких немає на панелі інструментів, це «Выделить всё» і «Очистить всё». Напишіть код цих пунктів меню:
«Выделить всё»: txt.SelectAll;
«Очистить всё»: txt.Lines.Clear;
Запустіть програму і перевірте роботу і відповідність всіх кнопок.
Детальніше про властивості компонента RichEdit ви можете прочитати у файлі «Про RichEdit.htm» який додається разом з лабораторною роботою.
