- •Глава 4. Компоненты 30
- •Глава 5. Основы программирования 37
- •Часть I. Delphi и работа в Интегрированной Среде
- •Глава 1. Объектно-ориентированное программирование
- •1.1. Основные понятия и определения
- •1.2. Визуальное программирование интерфейса
- •1.3. Общие вопросы построения программ
- •Глава 2. Проекты Delphi
- •2.1.Файлы проекта
- •2.2.Структура файла головной программы
- •2.3. Окно Интегрированной Среды Разработки Delphi
- •2.4. Панель главного меню и всплывающие меню
- •2.5. Форма и компоненты
- •2.5.1.Окно формы
- •2.5.2. Окно Редактора Кода
- •2.5.3. Инспектор Объектов
- •2.6. Структура модуля приложения
- •Глава 3. Элементы языка Delphi
- •3.1.Типы данных
- •3.1.1. Целый тип
- •3.1.2.Вещественный тип
- •3.1.3. Символьный тип
- •3.1.4. Строковый тип
- •3.1.5. Логический тип
- •3.2. Переменная
- •3.3. Константы
- •3.3.1.Числовые константы
- •3.3.2. Строковые и символьные константы
- •3.3.3. Логические и именованные константы
- •3.4. Инструкция присваивания
- •3.5. Стандартные функции
- •3.5.1.Математические функции
- •Глава 4. Компоненты
- •4.1. Форма и компоненты на форме
- •4.2. Событие и процедура обработки событий
- •Глава 5. Основы программирования
- •5.1. Сохранение проекта, его повторное открывание
- •5.2. Стиль программирования
- •5.3. Порядок разработки проекта
- •5.4. Управляющие структуры языка Delphi
- •5.4.1. Инструкция if
- •5.4.2. Инструкция case
- •5.5. Циклы
- •5.5.1. Инструкция for
- •5.5.2. Инструкция while
- •5.5.3. Инструкция repeat
- •5.5.4. Инструкция goto
- •5.6. Процедуры и функции
- •5.6.1. Структура функции
- •5.6.2. Структура процедуры
- •5.6.3. Ввод и вывод данных в диалоговых окнах
- •5.6.4. Запись инструкций программы
- •5.6.5. Отладка программы
- •5.7. Операции со строками
- •5.7.1. Стандартные функции и процедуры работы со строками
- •5.7.2. Использование операций со строками
- •5.8. Массивы
- •5.8.1. Объявление массива
- •5.8.2. Операции с массивами
- •5.8.3. Стандартные функции обработки массивов
- •5.8.4. Многомерные массивы
5.6.5. Отладка программы
ИСР предоставляет разработчику средство поиска и устранения ошибок в программе – отладчик. Отладчик позволяет выполнять трассировку программы, наблюдать значения переменных, контролировать выводимые программой данные.
Для того, чтобы найти причину ошибки, надо выполнить какой-то фрагмент программы, наблюдая изменения переменных при выполнении каждой команды. Трассировка – это процесс выполнения программы по шагам (step-by-step), инструкция за инструкцией. Для прохода фрагмента программы по шагам можно использовать команды, представленные в табл.5.13.
Наиболее распространённый инструмент – введение в приложение точек прерывания (breakpoint). Для ввода простой (безусловной) точки прерывания достаточно в окне Редактора Кода щелкнуть мышью на полоске левее кода требуемой строки. Строка выделится цветом и на ней появится красная точка (рис. 5.20).
Рис. 5.20. Окно Редактора Кода с введённой точкой прерывания
Таблица 5.13
Команды трассировки
Команда |
Горячие клавиши |
Пояснения |
Step Over |
F8 |
Пошаговое выполнение строк програм- |
(По шагам без захода в ...) |
|
мы, считая вызов функции или процедуры за одну строку, т.е. вход в функции и процедуры не производится. |
Trace Into |
F7 |
Пошаговое выполнение программы |
(Трассировка с заходом в ...) |
|
с заходом в вызываемые функции и процедуры. |
Trace to Next Source Line |
Shift+F7 |
Переход к следующей исполняемой строке |
(Трассировка до следующей |
|
|
строки) |
|
|
Run to Cursor |
F4 |
Команда выполняет программу до |
(Выполнить до курсора) |
|
того выполняемого оператора, на котором расположен курсор в окне редактора кода. |
Если запустить приложение на выполнение и начать с ним работать, то как только управление перейдёт к строке с установленной точкой прерывания, то произойдёт прерывание выполнения. Далее, при нажатии F7 или F8, будут выполняться операторы по шагам и в окне наблюдений Local Variables (рис. 5.21) можно видеть изменения значений переменных. Следует помнить, что если операторы содержат вызовы каких-то других процедур или функций, определённых в данном модуле, то при нажатии F7 программа будет заходить внутрь вызываемых процедур и функций. При нажатии F8 подобного захода не будет [1].
Рис. 5.21. Окно Local Variables
Для удаления точки прерывания достаточно щёлкнуть мышью на красной точке левее кода соответствующей строки.
Точки прерывания можно устанавливать только на выполняемых операторах. Если установить точку прерывания, например, на строке объявления переменной, то в момент запуска приложения в красной точке выделения строки прерывания появится крестик, предупреждающий, что прерывания не будет.
Для выхода из режима отладки выполнить команду RunProgram Reset или нажать Ctrl-F2.