Читайте также:
|
|
Выше мы рассматривали способы собрать «статическую» информацию о состоянии приложения в момент, когда произошла ошибка выполнения. Но не всегда такая информация дает полную картину происходящего. Чаще для того, чтобы найти причину ошибки, надо выполнить какой-то фрагмент программы, наблюдая изменения переменных при выполнении каждой команды.
Для прохода фрагмента по шагам можно использовать команды:
Команда | «Горячие» клавиши | Пояснения |
Step Over (По шагам без захода в …) | F8 | Пошаговое выполнение строк программы, считая вызов функции за одну строку, т.е. вход в функции не производится. |
Trace Into (Трассировка с заходом в …) | F7 | Пошаговое выполнение программы с заходом в вызываемые функции. |
Trace to Next Source Line (Трассировка до следующей строки) | Shift + F7 | Переход к следующей исполняемой строке. |
Run to Cursor (Выполнить до курсора) | F4 | Команда выполняет программу до того выполняемого оператора, на котором расположен курсор в окне редактора кода. |
Run Until Return (Выполнить до выхода из функции) | Shift + F8 | Выполнение программы до выхода из текущей функции, останов на операторе, следующем за вызовом этой функции. |
Show Execution Point (Показать точку выполнения) | - | Команда помещает курсор на операторе, который будет выполняться следующим. |
Испытайте эти команды на нашем примере. Выведите значения интересующих вас переменных и выражений в окно наблюдения Watches. Это окно, с которым вы уже хорошо знакомы, является, как говорилось, встраиваемым.
Этим удобно воспользоваться, встроив его, в Инспектор Объектов. В режиме проектирования окно наблюдения можно минимизировать так, что оно практически не будет занимать площадь экрана, не мешая работе (см. рисунок далее).
А во время выполнения приложения страницы Инспектора Объектов будут исчезать и при остановах вы можете наблюдать в окне Watches значения переменных (см. второй рисунок). Для того, чтобы все работало, надо сохранить описанную или любую другую конфигурацию отладочных окон с помощью команды View | Desktops | Save Desktop и командой View | Desktops | Set Debug Desktop задать эту конфигурацию как отладочную.
Выведя интересующие вас переменные в окно наблюдения и удобно разместив это окно, перейдите в ваш код и установите курсор на строке с оператором
A = A*10000
Теперь нажмите F4, чтобы приложение выполнялось до тех пор, пока не дойдет до строки, в которой стоит ваш курсор. Приложение начнет выполняться. Нажмите в нем кнопку. Вы попадете в окно Редактора Кода, состояние которого будет таким, какое вы уже наблюдали ранее в случае ошибки: будет выделена строка, на которой стоял ваш курсор перед выполнением. Теперь вы можете, нажимая F7 или F8 (в данном случае это безразлично), выполнять операторы по шагам и в окне наблюдений видеть изменения переменных и выражений. Различие между F7 и F8 появилось бы, если бы ваши операторы содержали вызов каких-то других функций, определенных в вашем модуле. В этом случае при нажатии F7 программа заходила бы внутрь этих вызываемых функций, а при нажатии F8 – не заходила бы.
Если вы прошли несколько циклов и вам это надоело, можете перевести курсор на оператор, следующий после цикла и задающий значение Label1.Caption. Нажмите F4. Тем самым вы сказали отладчику, что ему надо без остановов выполнять приложение до строки, указанной курсором. Все оставшиеся проходы цикла будут выполнены без остановов и программа остановится на указанной вами строке.
Дата добавления: 2015-11-13; просмотров: 68 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Окно наблюдения Watch List. | | | Точки прерывания. |