Вы некоторых программах вы могли встретить окно с 4мя полями ввода, расположенными так что как ни меняй размер одного поля остальные меняются с ним, при этом в середине образуется перекрестие.
Однако среди компонентов делфи такого компонента нет. Далее будет показано как делается крестообразный сплиттер на делфи из 3х обычных сплитеров
При работе со сторонними компонентами и библиотеками, иногда может возникнуть несогласие с автором. В частности рассмотрим такой момент, когда автор класса сторонней библиотеки создал property, которую нельзя изменить, но нам очень хочется.
Данный приём имеет ряд ограничений. Поэтому я не буду брать какой-то конкретный класс, а нарисую примитивный для примера.
Допустим, есть такой класс:
Вобщем какой-то сторонний компонент, у которого есть проперти
CorrectValue. Автор контрола считает, что данное проперти не нуждается в записи, а должно вычисляться автоматом.
Мы же считаем, что оно должно быть другим. Например Screen.Width div 2;
Как быть? Изменить исходники компонента? Логично, но нехорошо. Да их может и не быть. Можно использовать нехитрый трюк.
Маленький трюк, который пригодится Вам для создания приложений, работающих в фоновом режиме. Таких, как планировщик задач, служб, серверов и т.п. То есть приложений, которые постоянно сидят себе тихонько в памяти, и чего-то там в фоне делают, не мешая пользователю заниматься своими делами.
Для таких приложений важным фактором является размер потребляемой памяти.
Фоновые приложения должны кушать минимум оперативной памяти и не нагружать процессор.
В принципе, данный приём можно применять в любых приложениях. Просто для активных интерфейсных приложений в этом нет смысла.
Но меньше слов, больше кода:
VCL-справка по объекту TObject и его методу Free гласит: Warning: Never explicitly free a component within one of its own event handlers or the event handler of a component it owns or contains. For example, don't free a button, or the form that owns the button, in its OnClick event handler.
Ниже предлагается способ, который позволит убить компонент из его же собственного обработчика.
Если Вам в Delphi 2007 мало места для кода и Вы хотите его увеличить, то можно воспользоваться функцией распахивания окна редактора кода.
Для этого нужно создать ключ в реестре:
HKEY_CURRENT_USER\Software\Borland\BDS\5.0\Editor
Здесь нужно создать строковое значение с именем Zoom. В качестве значения прописать слово Zoom или SuperZoom.
Теперь запускаем дельфи. Если открыть модуль и сделать двойной клик на его таб-вкладочке, окно редактирования развернётся на весь экран.
Отличие Zoom от SuperZoom в том, что первый оставляет тулбар, а второй ничего не оставляет - редактор на весь экран.
Если вы хотите узнать сколько виртуальной памяти вам доступно вашей программе или общий объем физической и виртуальной памяти достаточно воспользоваться API функцией GlobalMemoryStatus.
Справочник представлен в виде таблиц. Первая колонка означает комбинацию клавиш. Вторая описание. Третья - версия Delphi, в которой эта комбинация появилась.
Отдельно о комбинациях вида Ctrl+K+E. Такая комбинация означает, что нужно нажать Ctrl+K, затем, удерживая Ctrl, нажать E.
Если Вы работаете в Delphi 2005 и выше, но у Вас слабенькая машина, либо нужно работать с большим кодом, то такая полезная вещь, как сворачивание кода будет заметно кушать ресурсы.
Отключается и включается CodeFolding комбинацией клавиш Ctrl+Shift+K+O.
То есть, удерживая Ctrl+Shift, нажимаете K, затем O.
Предлагаю вариант кода, позволяющий быстро и просто узнать версию своей программы.
Обычно используют общий код, для извлечения версии, пробега по полям и т.д... Но, если нужно узнать номер версии своей программы, то всё гораздо проще.
В Delphi 2005 и выше, визуальный дизайнер встроен и форму таскать по экрану невозможно (если конечно не переключиться в отстыкованный вид, как рассказывалось ранее).
Для выставления позиции формы на экране используется Form Positioner. Это такой маленький квадратик внизу-справа в окне визуального редактора.
Два предыдущих топика относятся к модераторам uNet.
Жду письма с правильным URL активации.
Ваша ошибка - Вы оправили не полный адрес активации:http://www.u...
Либо DelphiDistiller не работает, либо чего-то не понимаю, после...
Прошу прощенья =) Оказалось Антивирус блокировал.
Установка Дельфи 5 - Люди добрые подскажите пожалуйста.Пытаюсь у...
3-5Мб скушает без проблем.А вот 3-5Гб ни в коем разе. 32-битный ...
Обновленная ссылка - Ссылка изменилась.Turbo Delphi Portable Lit...
LZMA - А где можно скачать исходник на препроцессоровку ?
Alternative variant - switch off internal debugger.