Sign in Join
Wiki copytemporary

IDE Window: Watch list/ru: what changed

Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.

Title: IDE Window: Watch list/ru

OldNewLine
1+# Важно
2+
3+Вы должны [[Debugger Setup/ru|настроить отладчик]] и запустить проект для его отладки. Только тогда это окно будет полезно. Чтобы открыть список наблюдения, нажмите `Ctrl` + `Alt` + `W`.
4+
5+# Список наблюдения
6+
7+![](/wiki-images/6/63/Watch_List.png)
8+
9+«Список наблюдения» показывает значения переменных и выражений ("watches", отслеживаемые элементы), когда отлаживаемое приложение приостановливается (например, достигнута точка останова).
10+
11+Выражениями могут быть локальные или глобальные переменные, ([[GDB Debugger Tips/ru|определенные]]) свойства или выражения паскаля (ограниченная поддержка, например, «a + 1»). [[GDB Debugger Tips/ru|Подробнее см. здесь]]
12+
13+## Отображаемые данные
14+
15+Данные отображаются в виде 2 столбцов:
16+
17+- Expression(Выражение): отслеживаемые переменная или выражение
18+- Value(Значение): текущее значение выражения
19+
20+Записи можно дважды щелкнуть, чтобы отредактировать их.
21+
22+### Область видимости (Stackframe, Thread, History)
23+
24+Значения оцениваются в соответствии с областью видимости, установленной в диалоговых окнах [[IDE Window: Threads|Thread]] и [[IDE Window: Call Stack|Stack]]. По умолчанию используется текущий поток и стек вызовов верхнего уровня. Оба диалога (Stack and Frame) предлагают изменить «текущий» Frame/Thread. Окно просмотра будет следовать за этим выбором.
25+
26+Также можно выбрать ранее отображаемые значения, используя диалоговое окно [[IDE Window: Debug History|History]].
27+
28+### Специальные значения
29+
30+\<invalid\> (недействительный)
31+Значение в настоящее время недоступно. Так бывает, если отладчик не активен или отлаживаемое приложение в данный момент не приостановлено.
32+
33+\<evaluating\> (оценочный)
34+Значение в настоящее время получено. Результат ожидается
35+
36+\<disabled\> (отключенный)
37+Выражение исключается из оценки. См. Раздел «Отключение/включение кнопок (лампочек)».
38+
39+Error... (ошибочный)
40+Значение не может быть оценено. (Ошибка в выражении или переменная недоступна в выбранной области)
41+
42+## Интерфейс
43+
44+Панель инструметов
45+
46+![](/wiki-images/5/5d/Debugger_power.png) Power
47+Включает/отключает все обновления. Это не влияет на состояние включено/отключено отдельных отслеживаемых элементов. Это заморозит текущее отображение.
48+
49+![](/wiki-images/2/2f/Laz_add.png) Add
50+Добавляет новое выражение. Откроется диалоговое окно свойств Watch (Также можно дважды щелкнуть пустую строку в списке).
51+
52+![](/wiki-images/4/42/Debugger_enable.png) Enable/![](/wiki-images/c/c6/Debugger_disable.png) Disable
53+Включает/отключает отдельные отслеживаемые элементы из оценки. Можно использовать, чтобы не тратить время на оценку, если отслеживаемые элементы недоступны в текущей области видимости.
54+
55+![](/wiki-images/c/cc/Laz_delete.png) Remove
56+Удаляет выбранные отслеживаемые элементы.
57+
58+![](/wiki-images/5/5e/Debugger_enable_all.png) Enable all/![](/wiki-images/5/5c/Debugger_disable_all.png) Disable all
59+Включает/отключает все отслеживаемые элементы из оценки.
60+
61+![](/wiki-images/6/6b/Menu_clean.png) Delete all
62+Очищает список.
63+
64+![](/wiki-images/2/2f/Menu_environment_options.png) Properties
65+Изменяет выражение или свойства текущих/выбранных отслеживаемых элементов (Это также возможно сделать, дважды щелчкнув по отслеживаемому элементу).
66+
67+Контекстное меню ![](/wiki-images/4/4b/Watch_List_popup.png)
68+
69+В дополнение к вышеуказанным функциям контекстное меню позволяет:
70+
71+Inspect (Посмотреть)
72+открывает текущие отслеживаемоые элементы в Debug-Inspector'е
73+
74+Evaluate/Modify (Вычислить/Изменить)
75+открывает текущие отслеживаемые элементы в окне Evaluate/Modify
76+
77+Create Data/Watch Breakpoint (Создать точку останова с наблюдением...)
78+открывает диалоговое окно для создания новой точки наблюдения на основе текущего отслеживаемого элемента (останавливается, если текущее значение изменяется или становится доступным)
79+
80+Copy Name (Копировать имя)
81+копирует выражение в буфер обмена
82+
83+Copy Value (Копировать значение)
84+копирует значение в буфер обмена
85+
86+# Свойства наблюдения
87+
88+![](/wiki-images/2/28/Watch_Properties.png)
89+
90+Expression (Выражение)
91+выражение, для которого должно отображаться вычисленное значение. Выражения могут быть локальными или глобальными переменными, ([[GDB Debugger Tips/ru|определенными]]) свойствами или выражениями паскаля (ограниченная поддержка, например, «a + 1»).
92+
93+Repeat Count (Число повторов)
94+может использоваться для получения срезов массива. Наблюдение определяет первый элемент массива "A\[7\]" (должен иметь индекс). При "количестве повторов" равным 20 оно показывает элементы массива от A\[7\] до A\[26\]. Его также можно использовать с динамическим массивом (без индекса). Тогда оно указывает, сколько элементов нужно показать, начиная с Item\[0\].
95+
96+Digits (Разряды)
97+не реализовано.
98+
99+Enabled (Включить)
100+См. Enable/Disable выше.
101+
102+Allow function calls (Разрешить вызовы функций)
103+пока не поддерживается.
104+
105+Use Instance class type (Использовать тип экземпляра класса)
106+объекты обычно отображаются в соответствии с объявлением наблюдаемого выражения. Наблюдение "Sender: TObject" покажет вам только данные, объявленные в TObject. Однако объектные переменные могут содержать объекты унаследованных классов. Sender'ом может быть TForm. Используя это, отладчик найдет фактический класс объекта и отобразит все данные.
107+
108+Style (Стиль)
109+каким образом отображать данные. Если стиль не может быть применен, будет использоваться значение по умолчанию.
110+
111+# См.также
112+
113+- Watch-Points (Data-[[IDE Window:Breakpoints|Breakpoints]])
114+- [[IDE Window: Evaluate/Modify|Evaluate Window]]
115+- [[IDE Window: Variable Inspector|Debug Inspector]]
116+- [[IDE Window: Debug History|Debug History]]
117+
118+---
119+*From the Free Pascal wiki, page "IDE Window: Watch list/ru", as it stood on 2020-09-02 after a change by Zoltanleo, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history