IDE Window: Watch list/ru

From Free Pascal wiki
Jump to navigationJump to search

Deutsch (de) English (en) русский (ru)

Важно

Вы должны настроить отладчик и запустить проект для его отладки. Только тогда это окно будет полезно. Чтобы открыть список наблюдения, нажмите Ctrl + Alt + W.

Список наблюдения

Watch List.png

«Список наблюдения» показывает значения переменных и выражений ("watches", отслеживаемые элементы), когда отлаживаемое приложение приостановливается (например, достигнута точка останова).

Выражениями могут быть локальные или глобальные переменные, (определенные) свойства или выражения паскаля (ограниченная поддержка, например, «a + 1»). Подробнее см. здесь

Отображаемые данные

Данные отображаются в виде 2 столбцов:

  • Expression(Выражение): отслеживаемые переменная или выражение
  • Value(Значение): текущее значение выражения

Записи можно дважды щелкнуть, чтобы отредактировать их.

Область видимости (Stackframe, Thread, History)

Значения оцениваются в соответствии с областью видимости, установленной в диалоговых окнах Thread и Stack. По умолчанию используется текущий поток и стек вызовов верхнего уровня. Оба диалога (Stack and Frame) предлагают изменить «текущий» Frame/Thread. Окно просмотра будет следовать за этим выбором.

Также можно выбрать ранее отображаемые значения, используя диалоговое окно History.

Специальные значения

<invalid> (недействительный)
Значение в настоящее время недоступно. Так бывает, если отладчик не активен или отлаживаемое приложение в данный момент не приостановлено.
<evaluating> (оценочный)
Значение в настоящее время получено. Результат ожидается
<disabled> (отключенный)
Выражение исключается из оценки. См. Раздел «Отключение/включение кнопок (лампочек)».
Error... (ошибочный)
Значение не может быть оценено. (Ошибка в выражении или переменная недоступна в выбранной области)

Интерфейс

Панель инструметов

debugger power.png Power
Включает/отключает все обновления. Это не влияет на состояние включено/отключено отдельных отслеживаемых элементов. Это заморозит текущее отображение.
laz add.png Add
Добавляет новое выражение. Откроется диалоговое окно свойств Watch (Также можно дважды щелкнуть пустую строку в списке).
debugger enable.png Enable/debugger disable.png Disable
Включает/отключает отдельные отслеживаемые элементы из оценки. Можно использовать, чтобы не тратить время на оценку, если отслеживаемые элементы недоступны в текущей области видимости.
laz delete.png Remove
Удаляет выбранные отслеживаемые элементы.
debugger enable all.png Enable all/debugger disable all.png Disable all
Включает/отключает все отслеживаемые элементы из оценки.
menu clean.png Delete all
Очищает список.
menu environment options.png Properties
Изменяет выражение или свойства текущих/выбранных отслеживаемых элементов (Это также возможно сделать, дважды щелчкнув по отслеживаемому элементу).

Контекстное меню

Watch List popup.png

В дополнение к вышеуказанным функциям контекстное меню позволяет:

Inspect (Посмотреть)
открывает текущие отслеживаемоые элементы в Debug-Inspector'е
Evaluate/Modify (Вычислить/Изменить)
открывает текущие отслеживаемые элементы в окне Evaluate/Modify
Create Data/Watch Breakpoint (Создать точку останова с наблюдением...)
открывает диалоговое окно для создания новой точки наблюдения на основе текущего отслеживаемого элемента (останавливается, если текущее значение изменяется или становится доступным)
Copy Name (Копировать имя)
копирует выражение в буфер обмена
Copy Value (Копировать значение)
копирует значение в буфер обмена


Свойства наблюдения

Watch Properties.png

Expression (Выражение)
выражение, для которого должно отображаться вычисленное значение. Выражения могут быть локальными или глобальными переменными, (определенными) свойствами или выражениями паскаля (ограниченная поддержка, например, «a + 1»).
Repeat Count (Число повторов)
может использоваться для получения срезов массива. Наблюдение определяет первый элемент массива "A[7]" (должен иметь индекс). При "количестве повторов" равным 20 оно показывает элементы массива от A[7] до A[26]. Его также можно использовать с динамическим массивом (без индекса). Тогда оно указывает, сколько элементов нужно показать, начиная с Item[0].
Digits (Разряды)
не реализовано.
Enabled (Включить)
См. Enable/Disable выше.
Allow function calls (Разрешить вызовы функций)
пока не поддерживается.
Use Instance class type (Использовать тип экземпляра класса)
объекты обычно отображаются в соответствии с объявлением наблюдаемого выражения. Наблюдение "Sender: TObject" покажет вам только данные, объявленные в TObject. Однако объектные переменные могут содержать объекты унаследованных классов. Sender'ом может быть TForm. Используя это, отладчик найдет фактический класс объекта и отобразит все данные.
Style (Стиль)
каким образом отображать данные. Если стиль не может быть применен, будет использоваться значение по умолчанию.

См.также