как сделать редактор форм?
Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду
-
- Сообщения: 273
- Зарегистрирован: 30 июн 2005, 14:53
[LEFT]возникла необходимость в редакторе форм, типа как в Delphi из ограниченного числа компонентов: Edit, SpinEdit, Memo, CheckBox, Label. Есть идеи как можно сделать с сохранением? Кто-нибудь занимался подобными задачами?[/LEFT]
- Чем юзер похож на обезьяну?
- Он жмет на все, что жмется, дергает все, что дергается и крутит все, что крутится.
- Чем юзер отличается от обезьяны?
- У обезьяны хватает ума не воспроизводить ту последовательность, которая приводит к краху системы.
- Он жмет на все, что жмется, дергает все, что дергается и крутит все, что крутится.
- Чем юзер отличается от обезьяны?
- У обезьяны хватает ума не воспроизводить ту последовательность, которая приводит к краху системы.
- SergeyS
- Сообщения: 196
- Зарегистрирован: 21 ноя 2006, 17:12
- Откуда: Хакасия, Абакан
- Контактная информация:
Да путей множество, начиная от собственного формата данных на базе XML (на мой взгляд более предпочтительно) и заканчивая встроенным механизмом Delphi на базе класса TPersistent который умеет сохранять иерархию объектов унаследованных от TPersistent и соответственно загружать. Да и ещё все базовые компоненты в делфи поддерживают редактирование (изменение размеров и т.д.) в режиме desine time, следовательно если суметь изменить эти свойства (ComponentState или что-такое), то можно вызвать это состояние в run time режиме.
Да можно и просто тупо кидать контролы на какую-нибудь панель, являющуюся рабочей областью. На MouseOver над контролами подвесится, на Canvas'e панели отрисовывать рамки, ну и все в том-же духе.
It's a long way to the top if you wanna rock'n'roll
-
- Сообщения: 273
- Зарегистрирован: 30 июн 2005, 14:53
с сохранением не вопрос собственно, это не проблема. меня больше всего интересует изменение положения и размеров на форме, а также редактирование свойств
- Чем юзер похож на обезьяну?
- Он жмет на все, что жмется, дергает все, что дергается и крутит все, что крутится.
- Чем юзер отличается от обезьяны?
- У обезьяны хватает ума не воспроизводить ту последовательность, которая приводит к краху системы.
- Он жмет на все, что жмется, дергает все, что дергается и крутит все, что крутится.
- Чем юзер отличается от обезьяны?
- У обезьяны хватает ума не воспроизводить ту последовательность, которая приводит к краху системы.
Редактирование свойств можно делать через метод (не помню щас какого компонента) GetProperty & SetProperty - там в качестве параметров PropertyName, Component и Value - соответственно этот Component есть общий класс, от которого наследуются все контролы. Есть кажись и GetPropertyIndex;List - короче мне щас посмотреть надо, я раньше делал подобное.
It's a long way to the top if you wanna rock'n'roll
Вообщем во всем поможет юнит Design Editors
Там есть в частности
- TPropertyEditor, TComponentEditor
- Интерфейсы IComponentEditor, IProperty
Там есть в частности
- TPropertyEditor, TComponentEditor
- Интерфейсы IComponentEditor, IProperty
It's a long way to the top if you wanna rock'n'roll
- SergeyS
- Сообщения: 196
- Зарегистрирован: 21 ноя 2006, 17:12
- Откуда: Хакасия, Абакан
- Контактная информация:
Не думаю что его можно использовать, он работает только при наличии IDE Delphi." писал(а):Вообщем во всем поможет юнит Design Editors
Рекомендую посмотреть следующие ссылки:
http://www.delphikingdom.com/asp/itemq. ... ItemID=279
http://www.delphikingdom.com/asp/viewit ... logid=1212
http://www.delphikingdom.com/asp/itemq.asp?ItemID=553
-
- Сообщения: 273
- Зарегистрирован: 30 июн 2005, 14:53
вроде получилось,
спасибо всем участникам
спасибо всем участникам
- Чем юзер похож на обезьяну?
- Он жмет на все, что жмется, дергает все, что дергается и крутит все, что крутится.
- Чем юзер отличается от обезьяны?
- У обезьяны хватает ума не воспроизводить ту последовательность, которая приводит к краху системы.
- Он жмет на все, что жмется, дергает все, что дергается и крутит все, что крутится.
- Чем юзер отличается от обезьяны?
- У обезьяны хватает ума не воспроизводить ту последовательность, которая приводит к краху системы.