Debug Inspector
Go Up to Run Menu
Debug > Inspect
(available from the context menu in the Code Editor when you select an expression or when you hover the mouse over an expression when nothing else is selected)
Inspects the following types of data: arrays, classes, constants, functions, pointers, scalar variables, and interfaces.
You can also open the Debug Inspector by using:
- The Inspect button on the Evaluate/Modify dialog box
- The Inspect context menu command on the either the Local Variables Window or the Watch List Window
- Run > Inspect to open the Inspect window, which allows you to type the expression you want to inspect in the Debug Inspector
Alt+F5
The shortcut key for the Debug Inspector
Note: The Debug Inspector is only available when the process is stopped in the debugger.
The Debug Inspector contains four areas:
Area | Description |
---|---|
Top pane |
Displays the name, type, and address or memory location of the inspected element, if available. When inspecting a Delphi function call that returns an object, record, set, or array, the debugger displays "In debugger" in place of the temporarily allocated address. The C++ evaluator omits the address when inspecting function calls. |
Middle pane |
Displays one or more of the following tabs, depending on the type of data you inspect: Data, Methods, Properties. |
Lower pane |
Displays the tab sheet that corresponds to the tab selected in the middle pane:
|
Status bar |
Displays the data type of the currently selected member. |
Context Menu
Right-click the Debug Inspector to display the following commands:
Item | Description |
---|---|
Change |
Lets you assign a new value to a data item. An ellipsis (...) appears next to an item that can be changed. You can click the ellipsis as an alternative to choosing the change command. This command is only enabled when you can modify the data item being inspected. |
(C++ only) Affects only array types and pointer types. Opens the Range dialog box, which does the following:
| |
Show Inherited |
Switches the view in the Data, Methods, and Properties panes between two modes: one that shows all intrinsic and inherited data members or properties of a class, or one that shows only those declared in the class. |
Show Fully Qualified Names |
Shows inherited members using their fully qualified names. |
Sort By |
(C++ only) Sorts the data elements displayed in the Debug Inspector by their name or by the order in which they were declared in the code. |
Inspect |
Opens a new Debug Inspector on the data element you have selected. This is useful for seeing the details of data structures, classes, and arrays. |
Descend |
Same as the Inspect command, except that the current Debug Inspector is replaced with the details that you are inspecting (a new Debug Inspector is not opened). To return to a higher level, use the history list. |
Watch |
Creates a new watch item for the data element you have selected, and opens the Watch List Window. This command is enabled for items that can be sub-inspected. |
Evaluate/Modify |
Opens the Evaluate/Modify dialog box displaying the data element you have selected. |
Appears (along with in the Value field) only when the selected data item has an associated external-viewer type debugger visualizer. To display the data in a more human-readable format and in an external window, right-click the data item and click the Visualizers submenu item, such as Show Strings for the TStringList visualizer. | |
New Expression |
Lets you inspect a new expression. |
Type Cast |
Lets you specify a different data type for an item you want to inspect. Type casting is useful if the Debug Inspector contains a symbol for which there is no type information, and when you want to explicitly set the type for untyped pointers. |
Dockable |
Toggles whether the Debug Inspector window is dockable. |
Stay On Top |
Keeps the window visible when out of focus. |