Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > C++ Builder
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.10.2014, 11:52   #1
Kabak
Новичок
Джуниор
 
Регистрация: 16.10.2014
Сообщений: 6
По умолчанию Свойство собственного компонента типа ComboBox

При создании своего компонента, как создать и определить свойство типа ComboBox ?

Например: У TButton есть свойство DragMode и в выпадающем ComboBox у него 2-е переменные: dmManual и dmAutomatic.

Как аналогичный ComboBox определить в свойствах собственного компонента ?
Kabak вне форума Ответить с цитированием
Старый 16.10.2014, 12:28   #2
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,656
По умолчанию

Для начала надо просто выпилить лень, залезть в хэлп или в исходники и посмотреть.
Изображения
Тип файла: png 26.png (10.6 Кб, 35 просмотров)
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 16.10.2014, 12:33   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
как создать и определить свойство типа ComboBox ?
А какова цель? Создать свой компонент для палитры компонентов, или переопределить стандартный в действующей программе?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.10.2014, 12:49   #4
Kabak
Новичок
Джуниор
 
Регистрация: 16.10.2014
Сообщений: 6
По умолчанию

Цель: Создать свой компонент для палитры компонентов.

Мне нужно в моём компоненте определить свойство которое в Object Inspector будет выглядеть как ComboBox со списком параметров. DragMode привёл просто в качестве наглядного примера что мне нужно.

Как __property объявить при создании своего компонента, чтобы оно выглядело в Object Inspector как ComboBox со списком ?

Последний раз редактировалось Kabak; 16.10.2014 в 12:53.
Kabak вне форума Ответить с цитированием
Старый 16.10.2014, 13:18   #5
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,656
По умолчанию

Цитата:
Как __property объявить при создании своего компонента, чтобы оно выглядело в Object Inspector как ComboBox со списком ?
Скопипастил из исходников Vcl.Controls.hpp:
Код:
__property System::Uitypes::TDragMode DragMode = {read=GetDragMode, write=SetDragMode, default=0};
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 16.10.2014, 13:36   #6
Kabak
Новичок
Джуниор
 
Регистрация: 16.10.2014
Сообщений: 6
По умолчанию

Ёклмн, мне не TDragMode нужен.

Как в свойствах МОЕГО компонента ОБЪЯВИТЬ
Код:
published:
__property TComboBox ...  ?
Чтобы в Object Inspector при помещении моего компонента на форму был выбор свойства как у DragMode или Align или BorderStyle - выпадающий ComboBox ?
Kabak вне форума Ответить с цитированием
Старый 16.10.2014, 13:38   #7
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,656
По умолчанию

Цитата:
Чтобы в Object Inspector при помещении моего компонента на форму был выбор свойства
Какого свойства-то? Какого типа это свойство? Мне угадать?
Телепатор за неуплату отключили!
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 16.10.2014, 13:44   #8
Kabak
Новичок
Джуниор
 
Регистрация: 16.10.2014
Сообщений: 6
По умолчанию

Я и спрашиваю у вас, какого типа должно быть объявление свойства моего компонента, чтобы оно в Object Inspector выглядело как ComboBox ?

Пример : Я объявляю свойство

Код:
__published:
__property int GridWidth = { read=FGridWidth,write=SetGridWidth, default=10 };
оно выглядит в Object Inspector как поле с именем GridWidth для ввода типа Edit и там по умолчанию записано 10 как я и указал в объявлении свойства по умолчанию.

А как объявить свойство или какого типа оно должно быть объявлено чтобы в Object Inspector это свойство ВЫГЛЯДЕЛО как ComboBox со списком значений ( не важно какие значения )

Последний раз редактировалось Kabak; 16.10.2014 в 13:53.
Kabak вне форума Ответить с цитированием
Старый 16.10.2014, 13:56   #9
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,656
По умолчанию

Цитата:
Я и спрашиваю у вас, какого типа должно быть объявление свойства моего компонента, чтобы оно в Object Inspector выглядело как ComboBox ?
Мама, роди меня обратно...
Я ж тебе показал на примере свойства типа TDragMode, даже картинку заскриншотил, даже кусок стандартного исходника выдрал, чтобы показать, как это делается.
Ладно, щас съем успокоительную таблетку и напишу тебе в общем виде.





......------> таблетка -------->......





Общий вид свойства компонента, которое отображается в Obj.Inspector выпадающим списком:
Код:
__property Имя_типа_свойства имя_свойства = {поле/методы чтения и записи значений};
Где-то выше тип свойства должен быть определён (см. скриншот выше):
Код:
typedef enum Имя_типа_свойства {значение_0, значение_1, ..., значение_N - 1};
Так понятнее?
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 16.10.2014, 14:04   #10
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,656
По умолчанию

Самое обидное - это то, что ты мог сам посмотреть, как написаны подобные свойства в готовых компонентах, благо исходники-то есть. Но вместо своих мозгов тебе проще задействовать чужие, когда готовые решения у тебя УЖЕ ЕСТЬ.

Это пичаль-беда...

Какая версия билдера у тебя?
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание собственного компонента. Несколько вопросов! NapalmRain C++ Builder 2 02.04.2012 12:35
Посоветуйте хороший мануал по созданию собственного компонента shumsheec Обсуждение статей 3 29.08.2011 14:40
Свойство Text компонента ComboBox Aleksey1989 Помощь студентам 3 25.11.2010 14:17
создание собственного компонента МаксимШ Компоненты Delphi 5 08.06.2010 14:11
Создание собственного компонента Леха207 Помощь студентам 1 03.07.2007 12:45