Главная arrow Лаборатория  
03.09.2010
Главное меню
Главная
Лаборатория
Книги по дельфи
Инструменты
Статьи
Видео
Юмор
Поиск
Новости
Лента новостей
Новости Delphi
Новости проекта
Новости инструментов
Разные новости
База знаний Delphi
Общие вопросы
Windows, WinAPI
Графика, Звук
IDE Delphi
Консоль
Каталог@Mail.ru - каталог ресурсов интернет
комментарии
Лаборатория
Крестообразный сплиттер Версия для печати
Рейтинг: / 9
Написал Alexeis   
30.07.2009

Вы некоторых программах вы могли встретить окно с 4мя полями ввода, расположенными так что как ни меняй размер одного поля остальные меняются с ним, при этом в середине образуется перекрестие.


крестик

Однако среди компонентов делфи такого компонента нет. Далее будет показано как делается крестообразный сплиттер на делфи из 3х обычных сплитеров


Продолжение...
 
Вскрываем ReadOnly property Версия для печати
Рейтинг: / 5
Написал Snowy   
10.02.2009
При работе со сторонними компонентами и библиотеками, иногда может возникнуть несогласие с автором. В частности рассмотрим такой момент, когда автор класса сторонней библиотеки создал property, которую нельзя изменить, но нам очень хочется.
Данный приём имеет ряд ограничений. Поэтому я не буду брать какой-то конкретный класс, а нарисую примитивный для примера.
Допустим, есть такой класс:
  TStrikeCatsControl = class(TControl)
  private
    FCorrectValue: Integer;
  public
    constructor Create(AOwner: TComponent); override;
  published
    property CorrectValue: Integer read FCorrectValue;
  end;
 
...
 
constructor TStrikeCatsControl.Create(AOwner: TComponent);
begin
  inherited;
  FCorrectValue := Screen.DesktopWidth div 2;
end;
Вобщем какой-то сторонний компонент, у которого есть проперти CorrectValue. Автор контрола считает, что данное проперти не нуждается в записи, а должно вычисляться автоматом.
Мы же считаем, что оно должно быть другим. Например Screen.Width div 2;
Как быть? Изменить исходники компонента? Логично, но нехорошо. Да их может и не быть. Можно использовать нехитрый трюк.
Продолжение...
 
Минимизация занимаемой памяти Версия для печати
Рейтинг: / 32
Написал Snowy   
13.02.2008
Маленький трюк, который пригодится Вам для создания приложений, работающих в фоновом режиме. Таких, как планировщик задач, служб, серверов и т.п. То есть приложений, которые постоянно сидят себе тихонько в памяти, и чего-то там в фоне делают, не мешая пользователю заниматься своими делами.
Для таких приложений важным фактором является размер потребляемой памяти.
Фоновые приложения должны кушать минимум оперативной памяти и не нагружать процессор.
В принципе, данный приём можно применять в любых приложениях. Просто для активных интерфейсных приложений в этом нет смысла.
Но меньше слов, больше кода:
Продолжение...
 
Освобождение компонента из его же собственного обработчика Версия для печати
Рейтинг: / 6
Написал Yanis   
08.01.2008
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.

Ниже предлагается способ, который позволит убить компонент из его же собственного обработчика.

Продолжение...
 
Распахнуть окно редактирования на весь экран Версия для печати
Рейтинг: / 4
Написал Snowy   
24.09.2007
Если Вам в Delphi 2007 мало места для кода и Вы хотите его увеличить, то можно воспользоваться функцией распахивания окна редактора кода.
Для этого нужно создать ключ в реестре:
HKEY_CURRENT_USER\Software\Borland\BDS\5.0\Editor
Здесь нужно создать строковое значение с именем Zoom. В качестве значения прописать слово Zoom или SuperZoom.
Теперь запускаем дельфи. Если открыть модуль и сделать двойной клик на его таб-вкладочке, окно редактирования развернётся на весь экран.
Отличие Zoom от SuperZoom в том, что первый оставляет тулбар, а второй ничего не оставляет - редактор на весь экран.
 
Как получить информацию о системе (свободная память и т.д.) Версия для печати
Рейтинг: / 8
Написал Alexeis   
24.07.2007

Если вы хотите узнать сколько виртуальной памяти вам доступно вашей программе или общий объем физической и виртуальной памяти достаточно воспользоваться API функцией GlobalMemoryStatus.
Продолжение...
 
Комбинации клавиш Delphi Версия для печати
Рейтинг: / 63
Написал Snowy   
18.07.2007
Справочник представлен в виде таблиц. Первая колонка означает комбинацию клавиш. Вторая описание. Третья - версия Delphi, в которой эта комбинация появилась.
Отдельно о комбинациях вида Ctrl+K+E. Такая комбинация означает, что нужно нажать Ctrl+K, затем, удерживая Ctrl, нажать E.
Продолжение...
 
Отключить CodeFolding Версия для печати
Рейтинг: / 1
Написал Snowy   
11.07.2007
Если Вы работаете в Delphi 2005 и выше, но у Вас слабенькая машина, либо нужно работать с большим кодом, то такая полезная вещь, как сворачивание кода будет заметно кушать ресурсы.
Отключается и включается CodeFolding комбинацией клавиш Ctrl+Shift+K+O. То есть, удерживая Ctrl+Shift, нажимаете K, затем O.
 
<< В начало < Предыдущая 1 2 Следующая > В конец >>

Всего 1 - 8 из 15