Описание
TSIZECTRL-это невизуальный компонент V+LCL, который позволяет вам изменять размер, выбирать и перемещать декабы T-Control
В отличие от оригинальной реализации, текущая версия поддерживает Delphi и Lazarus, поэтому она вдохновлена оригинальной версией Ангуса Джонсона, но теперь это не то же самое, что Legacy/Old Version :)
Функции:
- Полностью настраиваемые кнопки: вы можете изменить счет (с 4 на 8), цвет, размер, прозрачность, форма и, если хотите - вы можете установить изображение кнопки
- 5 Типов форм: квадратный, круг, ромб, треугольник и круглый
- Настраиваемая кадр выбора: свойство MovePanelCanvas для доступа к всем кадрам выбора сразу же, с прозрачностью (Brush.style: = bsclear)
- Свойство ShowFrame, чтобы показать/скрыть кадр выбора
- Свойство MovePanelPhablend для указания альфа-канала рамки размеров/выбора
- Свойство MovePanelimage для установки изображения кадра выбора
- Поддержка Tcustomforms: когда форма изменяется с помощью Tsizectrl, она не может быть закрыта или максимизированной/минимизированной
- Поддержка сетки, с свойствами: Gridsize, Showgrid, Gridcolor, GridcolorContrast
- Варианты изменения размера:
- Свойство Aligntogrid - выравнивание элементов управления с сетью
- Применяет свойство - активируйте, чтобы немедленно изменить размер объекта
- Многопорядочное свойство - чтобы отрицать/разрешить изменение размера нескольких целей одновременно
- Свойство ограничений, чтобы указать минимальные и максимальные размеры режиматического объекта
- Перемещение имущество, чтобы отрицать/разрешить изменение размера объектов
- Поддержка тегов объектов, чтобы отрицание объекта от выбора
- Настраиваемые кнопки: цвета ({content-fill, border}) и изображения для включенных, зависящих и отключенных состояний
- Применяет свойство - для немедленного применения размеров к объекту
- Свойство EditDisabled разрешить (включено: = false)-> отключенные компоненты редактирование
- Различные стили кнопки «Размер засметьй»: Нет (кнопки скрыты), кнопки (все кнопки видны), линия, одиночная кнопка
- Различные параметры кнопки «Размер засметьй».
- Дополнительные варианты:
- Свойства растяжения, поставляемые с каждым изображением (TPICTURE), чтобы указать, какие изображения вы хотели бы сохранить в исходном размере
- Настраиваемые клавиши модификации (выбор, перемещение/размеры, выравнивающие клавиши)
- События Onhover для tsizebtns (размеры ручек/ручки)
Ограничения
Лазарь:- В настоящее время не поддерживает имущество MovePanelimage
- На некоторых платформах он не может поддерживать альфа-трансранльность
Ошибки и ошибки:
- Исправлены общие ошибки:
- Ошибка с размером сеткой (ShowGrid) на неформальных элементах управления
- Ошибка выбора с фокусировкой формы (когда вы пытаетесь изменить форму, и Tsizectrl все еще обрабатывает события)
- Ошибка выбора с формами (при форме размера, его подвеска с кнопками действий все еще доступна, что немного раздражает)
- Перемещение ошибок с включенным двойным буферистом
- Ошибка с размером BTN, когда объект влево+top = диаметр BTN (размер)
- Ошибка с рекурсией в DefWindowProc - FormWindowProc
- Ошибка с неназначенным контролем, вызванным выбором компонентов, вызванных размером размер
- Ошибка с курсором: иногда это не изменится, когда начинается переезд (например, с Tshape)
- Перемещение объекта с ключами, редактируя его на мыши, вызывает ошибки размеров.
- Ошибка с невидимыми объектами: он отрицает видимый, но выбор верхнего объекта
- Известные современные ошибки:
- 1. Добавить поддержку выбора отключенных объектов [Lazarus]
Возможное решение: зацепите все wndproces рекурсивные?
Почти планы:
- Новые функции:
- 1. Выровняйте линии (функция, EF)
- 2. Обнаружение управляющего многоугольника, чтобы нарисовать форму, чтобы соответствовать форме
- 3. Поддержка пользовательских тегов (ы)
- 4. D/L Cl реальная прозрачность быстрое поддержка с помощью метода DrawFocusRect и прямого типа, который может указать, как нарисовать Focus Rect
- 5. Собственность, чтобы скрыть прямо только при изменении размера
- Рефактор:
- 1. Перевернуть контроль, когда его размеры слишком малы (изменение позиции + изменение размера)
- 2. Регенерируйте верхние настройки кадра (добавьте свойство Frameontop, например, сделайте родитель TmovePanel таким же, как и родитель TSIZEBTN, при необходимости) [Delphi, Lazarus]
- 3.