- •Начнем - Ваша первая Lazarus-программа!
- •Вторая попытка.
- •Редактор
- •Главное меню
- •Меню Файл (File)
- •Меню Правка (Edit)
- •Меню Поиск (Search)
- •Меню Вид (View)
- •Меню Проект
- •Меню Запуск
- •Меню Пакет
- •Меню Сервис
- •Меню Окружение
- •Меню Окно
- •Меню Справка
- •Кнопочная панель
- •Палитра Компонентов
- •Отладчик
- •Настройки
- •Трассировка
- •Файлы Lazarus
Отладчик
Писал и редактировал: Romlo
Настройки
Чтобы пользоваться отладчиком, должны быть установлены галочки:
проект > параметры компилятора > вкладка "Связывание" >
галочка "Выдавать номера строк в ошибках времени исполнения"
галочка "Генерировать отладочную информацию для GDB (замедляет сборку)"
Кнопки
Управление отладкой производится вот этими пятью кнопками:
Зеленый треугольник - "Запуск" - скомпилировать и запустить приложение под отладчиком.
Вертикальные палочки - "Пауза" - здесь серые, а вообще синие - это пауза, можно приостановить приложение, например, при трассировке.
Квадратик - "Останов" - здесь серый, а вообще красный - закрыть приложение. Это если оно повисло (напр. в бесконечном цикле).
Остальные две кнопки используются при трассировке программы, про которую мы поговорим подробнее.
Трассировка
Трассировать программу - значит выполнять её шаг за шагом, построчно. Для трассировки какого-либо участка программы, нужно установить в нужном месте "точку останова". Для этого надо найти начало участка программы в редакторе кода, а затем щёлкнуть по его номеру слева. При этом сама строчка выделится красным, а рядом с номером появится красный кружок.
После нажатия на "запуск", знак вопроса в кружке должен смениться галочкой. Если вместо галочки там крестик, значит, точка останова не была установлена по каким-то причинам. В этом случае лучше ещё раз проверить настройки и перезапустить Lazarus. Если же всё получилось, продолжим. Далее, нужно вызвать то событие, при котором начнёт выполняться данный участок кода (то есть если вы поставили точку останова в начале button1_click, например, то теперь вам надо нажать эту кнопку). При этом должен показаться редактор кода. Ранее красная строчка теперь станет серой, а галочка в кружке сменится стрелочкой:
Вот теперь и вспомним про те две кнопки, что мы не рассмотрели. первая называется "Шаг со входом", вторая - "Шаг в обход". Смысл первой заключается в том, что если сейчас вы "стоите" на строчке с какой-то процедурой или функцией, то нажав эту кнопку, вы перейдете на эту процедуру и будете выполнять пошагово уже её. Когда она закончится, вы вернётесь обратно, но уже на следующую строку. Как несложно догадаться, нажав на вторую кнопку, вы не зайдёте в процедуру, она просто выполнится, а вы перейдёте на следующую строку.
Отдельно надо сказать, что "Шаг со входом" не работает, если функция, на которой вы "стоите", экспортирована из библиотеки (например, в WinAPI-функцию вы зайти не сможете).
Также имеется возможность просматривать содержимое переменных, для этого надо просто навести на неё мышку прямо в редакторе кода, во всплывающей подсказке будет указан адрес переменной и её содержимое:
Ну и в дополнение к сказанному добавлю, что чтобы продолжить выполнение программы в обычном режиме (если вам надоело её трассировать), достаточно нажать кнопку "запуск". Ну а чтобы убрать точку останова, надо закрыть приложение и ещё раз щёлкнуть по номеру строки, на которой эта точка стоит. ну и после этого заново откомпилировать приложение.
