- •Оглавление
- •20.1. Практическая работа 83
- •Глава I. Знакомство со средой Delphi
- •1.1. Общие сведения
- •Глава II. Создание приложений в среде Delphi
- •2.1. Характеристика проекта
- •2.2. Файл проекта
- •2.3. Файл формы
- •2.4. Файл модуля
- •2.5. Файл ресурсов
- •2.6. Практическая работа
- •Глава III. Использование компонентов
- •3.1. Понятие компонента
- •3.2. Страница Standard.
- •3.3. Страница Additional.
- •3.4. Страница Win32.
- •3.5. Страница System.
- •3.6. Страница Data Access.
- •3.7. Страница Data Controls.
- •3.8. Страница qReport.
- •3.9. Страница Dialogs.
- •3.10. Основные свойства объектов.
- •Глава IV. Работа с кнопками
- •4.1. Стандартная кнопка Button.
- •4.2. Кнопка с рисунком BitBtn.
- •4.3. Кнопка быстрого доступа SpeedButton.
- •4.4. Практическая работа
- •4.5. Самостоятельная работа
- •Глава V. Поля редактирования
- •5.1. Edit-однострочный редактор
- •5.2. Memo-многострочный редактор
- •5.3. Практическая работа
- •5.4. Самостоятельная работа
- •5.5. MaskEdit - специальный редактор
- •5.6. Практическая работа
- •6.3. Структура программы.
- •6 .4. Типы данных
- •6.4.1. Простые типы данных
- •6.4.2. Структурные типы данных
- •6.4.3. Функции и процедуры работы со строками
- •6.4.4. Функции преобразования строк в другие типы.
- •6.5. Операторы языка
- •6.6. Практическая работа.
- •6.8. Самостоятельная работа
- •6.9. Самостоятельная работа
- •6.10. Самостоятельная работа
- •6.11. Обработка исключительных ситуаций
- •Глава VII. Классы в Object Pascal.
- •7.1. Понятие класса
- •7.2. Поля класса
- •7.3. Методы класса
- •Глава VIII. Процедуры и функции, реализующие диалоги
- •8.1. Процедура ShowMessage.
- •8.2. Функция MessageDlg.
- •8.3. Функция MessageDlgPos.
- •8.4. Функция InputBox
- •9.2. Практическая работа
- •9.3. Самостоятельная работа
- •Глава X. Работа со списками
- •10.1. Простой список ListBox.
- •10.2. Комбинированный список ComboBox.
- •10.3. Общая характеристика списков
- •10.3.1. Свойства
- •10.3.2. Методы
- •10.4. Объект UpDown
- •10.5. Практическая работа
- •10.6. Самостоятельная работа
- •10.7. Самостоятельная работа
- •10.8. Самостоятельная работа
- •Глава XI. Объекты MainMenu и PopupMenu.
- •11.1. Основные свойства объектов
- •11.2. Игра «Крестики-нолики»
- •11.3. Самостоятельная работа
- •Глава XII. Использование переключателей.
- •12.1. Объект CheckBox
- •12.2. Объект RadioButton
- •12.3. Объект RadioGroup
- •12.4. Практическая работа
- •12.5. Самостоятельная работа
- •12.6. Самостоятельная работа
- •Глава XIII. Регуляторы величины
- •13.1. Объект ScrollBar
- •13.2. Практическая работа
- •13.3.Объект TrackBar
- •13.4. Самостоятельная работа
- •13.5. Самостоятельная работа
- •13.6. Компонент ProgressBar
- •Глава XIV. Объединение элементов управления
- •14.1. Объект Panel.
- •14.2. Область прокрутки ScrollBox
- •14.3. Фреймы Frame.
- •14.4. Практическая работа
- •14.5. Самостоятельная работа
- •Глава XV. Работа с таблицами
- •15.1. Объекты StringGrid и DrawGrid
- •15.2. Проект «Олимпиада»
- •Глава XVI.Страница Dialogs
- •16.1. Стандартные диалоговые окна Windows
- •15.3. Практическая работа
- •15.4. Самостоятельная работа
- •15.5. Самостоятельная работа
- •16.2. Общие свойства OpenDialog и SaveDialog:
- •16.3. Общие свойства OpenPicyureDialog и SavePictureDialog:
- •16.4. Практическая работа
- •16.5.Объект FontDialog
- •16.6. Объект ColorDialog
- •16.7. Практическая работа
- •16.8. Объекты FindDialog и ReplaceDialog
- •16.9. Проект «Примитивный редактор текста»
- •Глава XVII. Элементы с закладками
- •17.1. Однострочный блокнот TabControl.
- •17.2. Практическое задание
- •17.3. Самостоятельная работа
- •17.4. Многостраничный блокнот PageControl.
- •17.5. Практическая работа
- •Глава XVIII. Иерархические структуры
- •18.1. Объект TreeView
- •18.2. Практическая работа
- •18.3. Самостоятельная работа
- •18.4.Объект ListView
- •18.5. Практическое работа
- •Глава XIX. Работа с датами и временем
- •19.1. Объект DateTimePicker
- •19.2. Объект MonthCalendar
- •19.3. Объект Calendar.
- •19.4. Самостоятельная работа
- •19.5. Объект Timer
- •19.6. Практическая работа
- •19.7. Самостоятельная работа
- •Глава XX. Объект Animate
- •20.1. Практическая работа
- •20.2. Игра «угадай число»
- •Глава XXI. Панели инструментов
- •21.1. Объект ToolBar.
- •21.2. Объект ControlBar
- •21.3. Создание текстового редактора с использованием объекта RichEdit
- •Глава XXII. Графика в Delphi
- •22.1. Класс tCanvas
- •22.2. Класс tFont.
- •22.3. Класс tPen.
- •22.4. Класс tBrush
- •22.5. Класс tGraphic
- •22.6. Класс tPicture
- •22.7. PaintBox - окно для рисования
- •22.8. Практическая работа
- •22.9. Практическая работа
- •22.10. Самостоятельная работа
- •22.11. Объект Shape
- •22.12. Самостоятельная работа
- •22.13. Создание графического редактора
21.2. Объект ControlBar
Компонент служит удобным контейнером для размещения инструментальных панелей ToolBar. Он активно использует технологию Drag&Dock для управления положением панелей.
Свойство |
Значение |
AutoDrag |
Разрешает/запрещает компонентам ToolBar покидать границы Control Bar |
DragKind |
Определяет способ использования мыши:
|
DragMode |
Определяет, как будет выполняться комплекс действий, связанных с Drag&Dock. dmManual – вручную (программой) dmAutomatic – автоматически (свойствами и методами компонента) |
Picture |
Содержит изображение, которое, периодически повторяясь, создает фон компонента. |
21.3. Создание текстового редактора с использованием объекта RichEdit
Для создания текстового редактора нам понадобится компонент RichEdit, который представляет собой многострочный редактор, работающий с расширенным текстовым форматом RTF. Текст формата RTF хранит дополнительную служебную информацию, управляющую свойствами каждого абзаца и сменой шрифта по ходу текста.
Рассмотрим свойства компонента, которые понадобятся нам при создании программы.
Атрибуты абзаца доступны через следующие свойства:
Свойство |
Значение |
Alignment |
Горизонтальное выравнивание текста абзаца относительно границ компонента |
LeftIndent |
Отступ текста абзаца от левого края компонента |
Numbering |
Указывает, надо ли вставлять слева от абзаца символы списка. Если содержит nsBullet символы списка вставляются. |
RightIndent |
Отступ текста абзаца от правого края компонента |
Свойства класса TRichEdit:
Свойство |
Значение |
DefAttributes |
Определяет шрифтовые атрибуты всего текста |
Lines |
Содержит набор строк текста |
Paragraph |
Содержит атрибуты текущего или выделенного абзаца |
SelAttributes |
Определяет шрифтовые атрибуты выделенного текста |
SelLength |
Задает длину в символах выделенной части текста |
SelStert |
Определяет номер первого символа выделенной части текста от начала текста (нумерация начинается с нуля) |
SelText |
Содержит выделенный текст. Установка нового значения SelText заменяет выделенный текст на новый, а если нет выделения – вставляет его в позицию курсора. |
Методы компонента RichEdit в основном совпадают с методами компонента Memo.
Оформите окно программы как показано на рисунке. Окно содержит главное меню, две панели инструментов «Стандартная» и «Форматирование», рабочую область и строку состояния.
Главное меню содержит пункты:
Файл
Создать
Открыть
Сохранить
Сохранить как…
Выход
Правка
Отменить
Вырезать
Копировать
Вставить
Удалить
Найти
Заменить
Вид
Панели инструментов
Стандартная
Форматирование
Формат
Шрифт
Фон
Помощь
Справка
О программе
Пункты меню должны выполнять команды приближенные к тем, которые исполняются в программе Word Pad.
Строка состояния должна отображать координаты текстового курсора, а в заголовок программы – название открытого документа.
