Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.03.22;
Скачать: CL | DM;

Вниз

Нестандартное свойство компонента   Найти похожие ветки 

 
TStas   (2012-05-05 21:24) [0]

Почти написал компонент. У него есть два свойства нестандарного типа. Для них готовы диалоговые окна редакторов и у них есть строковое представление. Но никак не могу решить, как лучше: или написать редактор компонента и уже в нём изменять свойства, или сделать, чтобы в Object inspector"е они появлялись и редакировались в редакторе свойства? Или и там и там?
Хотел это в "компонентах" спросить, но боюсь, что это сочтут за OffTop. Ведь я же спрашиваю не как написать, а что написать. Как это другие-то делают.


 
alexdn ©   (2012-05-05 21:26) [1]

Удалено модератором


 
MBo ©   (2012-05-05 21:47) [2]

Как сделано в TOpenDialog.Filter - похоже на твою задачу?


 
Юрий Зотов ©   (2012-05-05 22:28) [3]

Особой разницы нет, но если редактируются СВОЙСТВА, то логично сделать редакторы СВОЙСТВ, а не редактор компонента. Замещаем GetAttributes, возвращаем paDialog - в Object Inspector появится кнопка, которая и будет запускать диалог редактора.


 
TStas   (2012-05-05 22:41) [4]

Как сделано в TOpenDialog.Filter - похоже на твою задачу? //Да, Очень похоже. Спасибо. :)
Замещаем GetAttributes, возвращаем paDialog - в Object Inspector появится кнопка //Спасибо, Юрий. Это я знал из книжки, которую вы же мне на ММП и посоветовали.
Я просто решал, как сделать, наверно, сделаю оба варианта.
MBo сказал про TOpenDialog. Компонент по смыслу на него крайне похож. Вот у файлового диалога при двойном щелчке, т. е. в редакторе именно компонента, вылазит само диалоговое окно. Наверно, мне также стоит сделать?
Сам компонент - это диалог поиска и замены. Я редил в одном месте переписать поиск/замену, ну и решил сделать по полной программе, т. е. в виде компонента. А само окно, как в дельфях.


 
Германн ©   (2012-05-05 22:54) [5]


> Сам компонент - это диалог поиска и замены.

А чем он отличается от TFindDialog и TReplaceDialog?


 
TStas   (2012-05-06 02:09) [6]

Тем, что он еще и саму замену в текстовом поле производит.


 
alexdn ©   (2012-05-06 19:15) [7]

> TStas   (06.05.12 02:09) [6]
Напиши мне плиз на емайл, хо пообщаться немного..


 
TStas   (2012-05-06 23:34) [8]

>alexdn
Дык я бы написал, но у тебя в деталях мейла нету. :(
Могу свой написать: stas258(бешеная собака)yandex.ru А мы знакомы?
А компонент дописал. Завтра допишу описание и куда-нибудь повешу.


 
Германн ©   (2012-05-07 01:39) [9]


> TStas   (06.05.12 02:09) [6]
>
> Тем, что он еще и саму замену в текстовом поле производит.


> Завтра допишу описание и куда-нибудь повешу.

Посмотрю.


 
TStas   (2012-05-07 20:25) [10]

Я ещё чуточку не дописал.:) Всё классно работает, но только мне хочется, чтобы свойство редактировалось именно в редакторе СВОЙСТВА, а пока оба нестандарных свойства редактируются в редакторе компонента, что мне кажется не очень правильным. Просто там одного значения, с которым оперирует редактор свойства, мало, нужна ссылка на сам компонент.
Компонент, как написал, это поиск замена в текстовом редакторе. Окно выглядит, как такое же окно всамих дельфи. Собственно, оно-то и наталкнуло на мысль о написании компонента. А свойства нестандартных два: это связанные с компонентом TMenuItem (одно свойство) и кнопки любого кнопочного класса. У первых добавляются поменюшки, а у вторых назначаются Actionы. Пока всё в редакторе компонента редактируется, а первым пунктом, который двойным щелчком вызывается, я вообще сделал просто показ диалогового окна. Это я у TFileDialog списал. :)


 
TStas   (2012-05-07 23:32) [11]

А теперь дописал наконец. Даже самому нравится. Писал больше недели. НЕ то, чтобы всю неделю писал, всё-таки надо было и дела делать. Короче, вот он http://kupifirmu.com/Replacer/



Страницы: 1 вся ветка

Текущий архив: 2013.03.22;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.109 c
2-1332909299
Pcrepair
2012-03-28 08:34
2013.03.22
Способ управления сложным проектом


15-1338548076
oxffff
2012-06-01 14:54
2013.03.22
Сушка или ремонт телефона galaxy s plus i9001


15-1351950219
Wonder
2012-11-03 17:43
2013.03.22
Какой хулиган удалил мой логин?


3-1277120776
Раиса
2010-06-21 15:46
2013.03.22
MySQL и внешние ключи


2-1332860610
Дмитрий С
2012-03-27 19:03
2013.03.22
SavePictureDialog и сохранение.