- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Контрольні питання
- •Контрольні питання
- •Контрольні питання
- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Тема 1.2: основні конструкції мови.
- •План заняття
- •Контрольні питання
- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Тема 1.2: основні конструкції мови.
- •План заняття
- •Контрольні питання
- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Тема 1.2: основні конструкції мови.
- •План заняття
- •Контрольні питання
- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Тема 1.2: основні конструкції мови
- •План заняття
- •Контрольні питання
- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Тема 1.2: основні конструкції мови
- •План заняття
- •Контрольні питання
- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Тема 1.3: галуження і цикли
- •План заняття
- •Контрольні питання
- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Тема 1.3: галуження і цикли
- •План заняття
- •Контрольні питання
- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Тема 1.3: галуження і цикли
- •План заняття
- •Контрольні питання
- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Тема 1.3: галуження і цикли
- •План заняття
- •Контрольні питання
- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Тема 1.4: елементи інтерфейсу
- •План заняття
- •Контрольні питання
- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Тема 1.3: галуження і цикли
- •План заняття
- •Контрольні питання
- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Тема 1.4: елементи інтерфейсу
- •План заняття
- •Контрольні питання
- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Тема 1.4: елементи інтерфейсу
- •План заняття
- •Контрольні питання
- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Тема 1.4: елементи інтерфейсу
- •План заняття
- •Контрольні питання
- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Тема 1.4: елементи інтерфейсу
- •План заняття
- •Контрольні питання
- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Тема 1.4: елементи інтерфейсу
- •План заняття
- •Контрольні питання
- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Тема 1.4: елементи інтерфейсу
- •План заняття
- •Контрольні питання
- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Тема 1.4: елементи інтерфейсу
- •План заняття
- •Контрольні питання
- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Тема 1.4: елементи інтерфейсу
- •План заняття
- •Контрольні питання
- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Тема 1.5: основи створення прикладних застосувань
- •План заняття
- •Контрольні питання
- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Тема 1.5: основи створення прикладних застосувань
- •План заняття
- •Контрольні питання
- •Контрольні питання:
- •Необхідні теоретичні відомості для практичної роботи:
- •Контрольні питання:
- •Змістовий модуль 1: основні поняття та означення. Елементи мови. Керування процесом обчислень
- •Тема 1.5: основи створення прикладних застосувань
- •План заняття
- •Проект Delphi
- •Модулей в проект.
- •Контрольні питання
- •Змістовий модуль 2: процедурно-орієнтоване програмування. Програмування графіки
- •Тема 2.1: основи мови object pascal
- •План заняття
- •Контрольні питання
- •Контрольні питання
- •Контрольні питання
- •Змістовий модуль 2: процедурно-орієнтоване програмування. Програмування графіки
- •Тема 2.1: основи мови object pascal
- •План заняття
- •Контрольні питання
- •Змістовий модуль 2: процедурно-орієнтоване програмування. Програмування графіки
- •Тема 2.1: основи мови object pascal
- •План заняття
- •Контрольні питання
- •Контрольні питання
- •Функции преобразования в числовой формат и обратно
- •Контрольні питання
- •Змістовий модуль 2: процедурно-орієнтоване програмування. Програмування графіки
- •Тема 2.1: основи мови object pascal
- •План заняття
- •7.1. Простые типы
- •Контрольні питання
- •Контрольні питання
- •Змістовий модуль 2: процедурно-орієнтоване програмування. Програмування графіки
- •Тема 2.2: графіка, мультимедія та друк
- •План заняття
- •Контрольні питання
- •Контрольні питання
- •Змістовий модуль 2: процедурно-орієнтоване програмування. Програмування графіки
- •Тема 2.2: графіка, мультимедія та друк
- •План заняття
- •Контрольні питання
- •Змістовий модуль 2: процедурно-орієнтоване програмування. Програмування графіки
- •Тема 2.2: графіка, мультимедія та друк
- •План заняття
- •Контрольні питання
- •Контрольні питання
- •Змістовий модуль 2: процедурно-орієнтоване програмування. Програмування графіки
- •Тема 2.2: графіка, мультимедія та друк
- •План заняття
- •Контрольні питання
- •Печать с помощью объекта Printer
- •Подготовка и печать отчетов с помощью QuickReport — компоненты QuickRep, qrSubDetail, qrLabel, qrExpr, qrSysData, qrMemo, qrRichText, qrShape, qrImage
- •Контрольні питання
- •Змістовий модуль 3: масиви. Записи та множини
- •Тема 3.1: масиви
- •План заняття
- •Листинг 1. Инициализация и вывод массива
- •Ввод массива
- •Использование компонента StringGrid
- •Листинг 2. Ввод и обработка массива целых чисел
- •Листинг 3. Процедура обработки события OnKeyPress
- •Листинг 4. Ввод и обработка массива дробных чисел
- •Контрольні питання
- •Объявление записи
- •Инструкция with
- •Ввод и вывод записей в файл
- •Вывод записи в файл
- •Листинг 25. Добавление записей в файл
- •Чтение записи из файла
- •Листинг 26. Чтение записей из файла
- •Контрольні питання
- •Змістовий модуль 3: масиви. Записи та множини
- •Тема 3.3: множини
- •План заняття
- •Контрольні питання
- •Необхідні теоретичні відомості для практичної роботи:
- •Контрольні питання:
- •Змістовий модуль 3: масиви. Записи та множини
- •Тема 3.4: множини обовязкова контрольна робота №28
- •Змістовий модуль 4: файлові структури даних. Динамічні структури даних
- •Тема 4.1: робота з файлами
- •План заняття
- •Объявление файла
- •Назначение файла
- •Вывод в файл
- •Открытие файла для вывода
- •Листинг 20. Создание нового или замещение существующего файла
- •Листинг 21. Добавление в существующий файл
- •Ошибки открытия файла
- •Закрытие файла
- •Пример программы
- •Листинг 22. Простая база данных (запись в файл)
- •Ввод из файла
- •Открытие файла
- •Листинг 23. Обработка ошибки открытия файла (фрагмент программы)
- •Чтение данных из файла
- •Чтение чисел
- •Чтение строк
- •Конец файла
- •Листинг 24.. Чтение из файла
- •Контрольні питання
- •Змістовий модуль 4: файлові структури даних. Динамічні структури даних
- •Тема 4.1: файлові структури даних. Динамічні структури даних
- •План заняття
- •Контрольні питання
- •Указатели
- •Динамические переменные
- •Листинг 27. Создание, использование и уничтожение динамических переменных
- •Листинг 28. Добавление элемента в начало динамического списка
- •Упорядоченный список
- •Добавление элемента в список
- •Листинг 29. Добавление элементов в упорядоченный список
- •Удаление элемента из списка
- •Листинг 30. Удаление узла из списка
- •Контрольні питання
- •Необхідні теоретичні відомості для практичної роботи:
- •Контрольні питання:
- •Необхідні теоретичні відомості для практичної роботи:
- •Контрольні питання:
- •Змістовий модуль 4: файлові структури даних. Динамічні структури даних
- •Тема 4.2: динамічні структури
- •План заняття
- •Вариантные переменные
- •Контрольні питання
- •Const-параметры
- •Контрольні питання
- •Змістовий модуль 4: файлові структури даних. Динамічні структури даних
- •Тема 4.2: динамічні структури
- •План заняття
- •Способы вызова подпрограмм
- •Контрольні питання
- •Этапы разработки программы
- •Спецификация
- •Создание установочного диска
- •Алгоритм и программа
- •Контрольні питання
- •Этапы разработки программы
- •Спецификация
- •Создание установочного диска
- •Алгоритм и программа
- •Контрольні питання
- •Контрольні питання
- •Необхідні теоретичні відомості для практичної роботи:
- •Контрольні питання:
- •Змістовий модуль 6: програмування з графами. Візуальні компоненти. Бази даних
- •Тема 6.2: Візуальні компоненти
- •План заняття
- •Контрольні питання
- •Распознавание источника события, нажатых кнопок и клавиш, координат курсора
- •События клавиатуры
- •Распознавание нажатых клавиш
- •Контрольні питання
- •Создание нового IntraWeb приложения
- •Редактирование главной формы
- •Написание обработчика события для кнопки
- •Запуск созданного приложения
- •Контрольні питання
- •Управляющие кнопки Button и BitBtn
- •Кнопка с фиксацией SpeedButton
- •Группы радиокнопок — компоненты RadioGroup, RadioButton и GroupBox
- •Контрольні питання
- •Листинг 28. Добавление элемента в начало динамического списка
- •Упорядоченный список
- •Добавление элемента в список
- •Листинг 29. Добавление элементов в упорядоченный список
- •Удаление элемента из списка
- •Листинг 30. Удаление узла из списка
- •Змістовий модуль 6: програмування з графами. Візуальні компоненти. Бази даних
- •Упражнения. Совершенствование проекта
- •Контрольні питання:
- •Контрольні питання
- •Упражнения
- •Контрольні питання:
- •Змістовий модуль 6: програмування з графами. Вызуальны компоненти. Бази даних.
- •Тема 6.2: візуальні компоненти
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами. Візуальні компоненти. Бази даних
- •Тема 6.3: форми та меню
- •План заняття
- •Контрольні питання
- •Контекстное всплывающее меню — компонент PopupMenu
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами. Візуальні компоненти. Бази даних
- •Тема 6.4: обробка виключних ситуацій
- •План заняття
- •Конрольні питання
- •Упражнения. Совершенствование проекта.
- •Контрольні питання:
- •Змістовий модуль 6: програмування з графами
- •Тема 6.4: обробка виключних ситуацій
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами. Візуальні компоненти. Бази даних
- •Тема 6.5: організація прикладних застосувань
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами. Візуальні компоненти. Бази даних
- •Тема 6.5: організація прикладних застосувань
- •План заняття
- •Контрольні питанна
- •Змістовий модуль 6: програмування з графами
- •Тема 6.5: організація прикладних застосувань
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами
- •Тема 6.5: організація прикладних застосувань
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами
- •Тема 6.5: організація прикладних застосувань
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами
- •Тема 6.5: організація прикладних застосувань
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами
- •Тема 6.5: організація прикладних застосувань
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами
- •Тема 6.5: організація прикладних застосувань
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами. Візуальні компоненти. Бази даних
- •Тема 6.6: основи баз даних
- •План заняття
- •Классификация баз данных
- •Локальная база данных
- •Удаленная база данных
- •Структура базы данных
- •Контрольні питання
- •Контрольні питання
- •Упражнения
- •Контрольні питання:
- •Змістовий модуль 6: програмування з графами
- •Тема 6.6: основи баз даних
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами
- •Тема 6.6: основи баз даних
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами
- •Тема 6.6: основи баз даних
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами
- •Тема 6.6: основи баз даних
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами
- •Тема 6.6: основи баз даних
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами
- •Тема 6.6: основи баз даних
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами. Візуальні компоненти. Бази даних
- •Тема 6.7: навігація по набору даних. Мова sql. Створення довідкової системи
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами
- •Тема 6.7: навігація по набору даних. Мова sql. Створення довідкової системи
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами
- •Тема 6.7: навігація по набору даних. Мова sql. Створення довідкової системи
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами
- •Тема 6.7: навігація по набору даних. Мова sql. Створення довідкової системи
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами
- •Тема 6.7: навігація по набору даних. Мова sql. Створення довідкової системи
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами
- •Тема 6.7: навігація по набору даних. Мова sql. Створення довідкової системи
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами
- •Тема 6.7: навігація по набору даних. Мова sql. Створення довідкової системи
- •План заняття
- •Insert into Имя таблицы
- •Insert into Имя_таблицы
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами
- •Тема 6.7: навігація по набору даних. Мова sql. Створення довідкової системи
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами
- •Тема 6.7: навігація по набору даних. Мова sql. Створення довідкової системи
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами
- •Тема 6.7: навігація по набору даних. Мова sql. Створення довідкової системи
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами
- •Тема 6.7: навігація по набору даних. Мова sql. Створення довідкової системи
- •План заняття
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами
- •Тема 6.7: навігація по набору даних. Мова sql. Створення довідкової системи
- •План заняття
- •Рисование круга
- •Контрольні питання
- •Змістовий модуль 6: програмування з графами. Візуальні компоненти. Бази даних
- •Тема 6.7: навігація по набору даних. Мова sql. Створення довідкової системи обов’язкова контрольна робота №63
- •Змістовий модуль 6: програмування з графами. Візуальні компоненти. Бази даних
- •Тема 6.7: навігація по набору даних. Мова sql. Створення довідкової системи
- •План заняття
Контрольні питання:
Опишіть принципи роботи компонента F1book та процедуру забезпечення синтаксично правильного виводу текстових та цмфрових даних.
Охарактеризуйте масиви та їх використання у оболонці Delphi.
Опишіть компоненти відображення заголовків.
Опишіть компоненти відображення ієрархічних даних TreeView, OutLine, ListView.
Охарактеризуйте роботу з компонентом Memo та пошуком даних в масивах.
Опишіть компоненти відображення графічної інформації.
Опишіть методи сортування масивів.
Охарактеризуйте компонент Image та Paintox.
Опишіть процедуру побудови графіків та діаграм.
АУДИТОРНЕ ЗАНЯТТЯ
Змістовий модуль 6: програмування з графами. Візуальні компоненти. Бази даних
Тема 6.2: Візуальні компоненти
Лекція №36 – Загальна характеристика візуальних компонентів
План заняття
Характеристика властивостей візуальних компонентів Тор; Width; Height.
Огляд елементів керування візуальних компонентів
Поняття фокусу та події
Как уже было отмечено, компоненты делятся на две категории –визуальные и невизуальные. Невизуальные компоненты характеризуются тем, что при работе программы они просто невидимы. С другой стороны, визуальные компоненты после запуска программы видимы, если их специально не скрывают. Как правило, внешний вид визуальных компонентов на этапе разработки и в процессе выполнения программы совпадает, хотя и может изменяться динамически в зависимости от различных условий. Визуальные компоненты называют элементами управления. Все компоненты Delphi являются потомками класса Tcomponent. Класс Tcontrol является базовым классом для визуальных компонентов. У класса Tcontrol есть два наследника, определяющие две группы компонентов – имеющие оконный ресурс (TwinControl и его потомки) и не имеющие этого ресурса (TgraphicControl и его потомки). Оконный ресурс представляет собой специальный ресурс Windows, используемый для создания окон, а также для получения и обработки сообщений Windows. Другими словами, только компоненты-потомки класса TwinControl могут получать и обрабатывать сообщения Windows. К компонентам с оконным ресурсом относятся однострочные и многострочные редакторы, кнопки, линейки скроллинга, переключатели и т.д., а также различные панели и группирующие элементы управления, в которых размещаются другие компоненты. Элементы графического типа не имеют оконного ресурса. К ним относятся метки, геометрические фигуры, рамки, изображения, панели для рисования и т.д.
О внешнем виде компонента имеет смысл говорить только для элементов управления, так как внешний вид невизуальных компонентов либо отсутствует, либо сугубо индивидуален.
Рассмотрим самые общие свойства, которые имеются у всех визуальных компонентов.
Свойства. Управление положением компонента на экране и его размерами осуществляется с помощью четырех его свойств Left – горизонтальная координата левого верхнего угла;
Тор – вертикальная координата левого верхнего угла;
Width – ширина;
Height – высота.
Для всех компонентов эти свойства задаются в пикселях относительно координат клиентской части родительского компонента {клиентской частью компонента называется его внутренняя область, за исключением заголовка, рамки и меню). Изменение этих свойств возможно как на этапе конструирования, так и на этапе выполнения программы, что приводит к немедленному изменению размеров и расположения компонентов. Пусть, к примеру, на форме находятся две кнопки – Buttonl и Button2 класса Tbutton, высота которых 25 пикселей, а ширина 75. Для того чтобы размеры кнопки Button2 стали* в два раза больше, можно увеличить размеры кнопки в Инспекторе объектов либо в обработчике нажатия кнопки Buttonl написать две строки:
Button2.Width:=150; Button2.Height: =50;
В первом случае размеры кнопки изменятся на этапе конструирования (и сохранятся на момент запуска программы), а во втором случае изменение произойдет при выполнении программы.
Все элементы управления имеют свойство Enabled, которое управляет доступностью компонента в тот или иной момент времени. Другими словами, данное свойство определяет, должен ли этот элемент реагировать на события клавиатуры, таймера или мыши. При значении этого свойства False элемент управления считается отключенным и изображается серым цветом.
Свойство Parent также доступно для всех элементов управления. В этом свойстве содержится ссылка на родительский элемент управления, который содержит данный элемент.
Способ выравнивания элемента управления внутри своего родительского компонента задает свойство Align. Возможные варианты выравнивания описаны в табл. 4.1. Всем элементам управления это свойство доступно во время выполнения программы, и большинству компонентов оно доступно также на этапе конструирования (Tlabel, Tpanel, Tmemo и другие).
Цвет и стиль заливки элемента управления задается свойством Brush, которое доступно только во время работы программы и только для чтения.
В Windows компоненты с оконными ресурсами называются родительскими, а связанные с ними неоконные – дочерними. Следует отметить, что оконные компоненты тоже могут быть дочерними по отношению к родительскому оконному элементу. Неоконный элемент может быть только дочерним и не может играть роль родительского. Родитель с дочерними элементами рассматривается в Windows как единое целое. Другими словами, при появлении родителя на экране появляются и его дочерние компоненты. А при закрытии родителя его дочерние элементы также исчезают вместе с ним. К тому же дочерние компоненты не могут выходить за границы родителя. Хотя, как правило, эти требования выполняются автоматически, о них следует помнить и соблюдать неукоснительно, иначе программы могут выдавать непредсказуемые результаты.
Свойство Visible позволяет управлять отображением элемента на экране (если True, то компонент виден).
Для того чтобы узнать, отображается оконный элемент управления на экране во время выполнения программы или нет, используется свойство Showing. Это свойство доступно только для чтения и имеет значение True, если свойство Visible имеет значение True, либо False, если Visible = False.
Сделать элемент управления или форму видимыми можно при помощи вызова метода Show, который присваивает свойству Visible значение True. Метод Hide делает невидимым элемент управления, присваивая свойству Visible значение False.
Цвет фона большинства элементов управления задается свойством Color, которое доступно как на этапе разработки, так и в момент выполнения программы.
Характеристики шрифтов, которыми будет отображаться текст визуальных компонентов, задаются свойством Font.
Свойство Cursor позволяет изменять форму указателя мыши, когда он находится над элементом управления.
Текст краткой всплывающей подсказки устанавливается свойством Hint, а свойство ShowHint определяет, будет ли данная справка отображаться на экране в момент выполнения программы.
Размещаемый в элементе управления текст задастся либо свойством Text, либо свойством Caption.
Для элементов управления оконного типа используется свойство Ctl3D (эффект трехмерного изображения). Свойством HelpContext задается номер раздела справочной системы, выводимой на экран при нажатии клавиши F1.
Свойства ParentColor, ParentFont, ParentShowHint, ParentCtl3D используются для совместимости с родительскими элементами.
Фокус. Из всех элементов управления, расположенных на форме, в процессе работы программы один компонент всегда отличается от других. Этот элемент называется активным и может быть только элементом оконного типа. Если элемент активен, то говорят, что он «имеет фокус». С помощью клавиши Tab фокус поочередно переходит к каждому объекту формы. Для того чтобы элемент управления стал активным, необходимо выполнение нескольких условий:
■ все его родительские компоненты, а также он сам должны быть видимы на экране (у всех них свойство Visibl должно быть True);
свойство Enabled всех этих компонентов должно быть True (значение этого свойства говорит о том, что компонент может быть активным);
он должен находиться в активной форме;
элемент управления должен быть активизирован либо мышью, либо программно (метод SetFocus), либо клавишей Tab.
Следует также отметить, что фокус могут иметь только элементы с оконным ресурсом.
События.
У
всех без исключения компонентов Delphi,
как и у объектов
реального мира, существует свое поведение
– набор откликов на события,
происходящие с ними. Список событий для
каждого «компонента, на которые он
реагирует, представлен в Инспекторе
объектов на странице Events.
Поведение
объекта определяется тем, какие
обработчики и для каких событий он
имеет. Создание прило