Уголок Программиста

Добавить
в Избранное

Уважаемые Посетители!

Здесь я хочу поделиться некоторыми находками, связанными не с программированием, а со средой Дельфи. Обычно о них редко упоминается в учебниках, в основном знания передаются от человека к человеку (что-то вроде cheats).

Alex_soldier              
(alex_soldier@mail.ru)    
Уголок Материалы Методики Проекты

РАЗДЕЛЫ САЙТА

Главная страница Мира Идей

Лаборатория WEB-мастера
Уголок Программиста
Игровая Зона
Статьи о Космосе и Вселенной

Форум

РАССЫЛКИ САЙТА
(Content.Mail.Ru)

Обзор интересных рассылок

Web-мастерство для каждого

Космос: Новости Вселенной

Чего нам не хватает в играх?

Heroes: только Новые Идеи

HTML, CSS, JS в примерах

Самые-самые убойные
анекдоты сети




Получить архивы на e-mail (RAR ~ 2 Мб)

Фишки Delphi

Запуск Delphi без создания нового проекта
Если вы не хотите, чтобы каждый раз при запуске Дельфи у вас открывался пустой проект, пропишите в свойствах ярлыка следующую командную строку:
delphi6.exe -np

А если добавить еще один параметр, то Дельфи будет стартовать без своего окна-логотипа:
delphi6.exe -np -ns



Запомнить открытые закладки
Если вы хотите, чтобы Delphi запомнила, с какими модулями вы работали, и автоматически открыла бы их при вашем следующем возвращении к проекту, зайдите в меню и поставьте галочки:
Tools > Environment options > Preferences > Autosave options > Project desktop

Кстати, при этом будут запоминаться не только открытые юниты, но и установленные в них breakpoints!



Как поставить BreakPoint
Нужно всего-то щелкнуть мышкой слева от окна кода - появится красный кружок и строка также станет красной. Теперь можно запустить программу (F9): она дойдет до этой строки и останавливается. Далее можно продолжить выполнение по действиям (F7) или по блокам (F8). Разница в том, что по F7 она будет заходить во все подпрограммы и составные конструкции, а по F8 - довольно шустро перепрыгивать через них.

В процессе трассировки можно навести курсор на любую переменную в тексте программы, и ее текущее значение отобразится в виде всплывающего хинта!
Значение переменной можно посмотреть и другим способом (в специальном окне):
Ctrl + F7





Если задолбали exception
Бывает так, что какой-то блок кода выдает исключительные ситуации, которые мешают запускать проект. Эти неприятные события можно временно отключить! Для этого ставим 1-ый BreakPoint в начале блока, в его свойствах ставим галочку:
Breakpoint Properties > Advanced > Actions > Ignore subsequent exceptions

Сразу же в конце блока ставим 2-ой BreakPoint, и в его свойствах ставим галочку:
Breakpoint Properties > Advanced > Actions > Handle subsequent exceptions

Теперь это место будет проскакиваться без задержек и всплывающих диалогов подтверждений!



Как поставить Якорь
Предположим, у вас уже объемный модуль, и вам нужно что-то посмотреть в каком-то месте далеко выше или ниже, а затем быстро вернуться к текущей позиции.
Ctrl + Shift + цифра 0..9

Слева появится маркер с соответствующей цифрой. Теперь, чтобы вернуться сюда из любого места модуля, достаточно нажать
Ctrl + цифра 0..9

В каждом модуле можно поставить до 10 подобных якорей (цифры 0..9) и мгновенно перемещаться между ними!



Быстрое перемещение от заголовка подпрограммы к ее телу (и обратно)
Вот вы пробегаете по секции описания, находите заголовок нужной функции или процедуры, хотите перейти на нее. Но ее тело может находится тысячью строками ниже!
Ctrl + Shift + Стрелка Вниз

И вы сразу же оказываетесь в ее теле, прямо под строкой begin.
Хотите вернуться обратно? Нет ничего проще:
Ctrl + Shift + Стрелка Вверх

Но вот новая неприятность: подпрограмма в коде вызывается из другого модуля! Ничего страшного:
Ctrl + Щелчок мышью



Как быстро наделать пустых подпрограмм
Набив вручную несколько заголовков с описаниями подпрограмм, вы решили перейти к их телам. Неужели тоже вручную? Ни за что!
CTRL + SHIFT + C

Это же верно и для недостающих методов класса!



Изменить отступ для форматирования блока
Правила хорошего тона предписывают делать отступы для каждого логического уровня блока команд. Сделать-то не сложно, но как побыстрее исправить при ошибке? Выделяем фрагмент кода и... двигаем влево или вправо:
держим CTRL + K, нажимаем U или I



Шаблон составной конструкции
Если взять любую составную конструкцию (массив, кейс, класс), то в ее описании будет много статических повторяющихся символов. Так не будем печатать их руками, а просто выберем и вставим нужный шаблон:
Ctrl + J

Если даже выбирать не хочется, то можно еще быстрее: пишем сокращение и нажимаем всю ту же комбинацию клавиш!



Получить уникальный GUID
В некоторых случаях, например при создании интерфейса (программного, межклассового), необходимо указать уникальный идентификатор вида: ['{50564FE6-A3F0-46F5-B142-4FBC14D06915}']
Ctrl + Shift + G



Сброс программы
Ну что же, уже все отлично, точнее - почти все. Программа внезапно заглючила и отказала закрываться. Экстренный сброс:
Ctrl + F2



ТОЛЬКО НЕ УМИРАЙ!
Не удержался я, все же приведу один секрет из области программирования. Программы, которые выполняют длительные обработки в циклах (например математические вычисления), выглядят повисшими или умершими, т.к. не реагируют ни на что до завершения цикла.
Чтобы все же время от времени возвращать их к жизни, позволив например среагировать на нажатие кнопки ОТМЕНА или обработать другие накопившиеся события, нужно в том долгом цикле изредка выполнять команду
Application.ProcessMessages;



Мир Идей:
∙ Форумы ∙
∙ Космос ∙
∙ Heroes ∙
∙ Зона И ∙
∙ WEB ∙
∙ AML ∙
∙ Program ∙


(C) Copyright 1998 – 2009 by Alex_soldier

Сайт сделан по технологии AML