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

Вниз

Вызов свойства компонента из его контекстного меню   Найти похожие ветки 

 
LikeLamer ©   (2003-04-21 13:06) [0]

Есть компонент (мой собственный), имеющий свойство типа TCollection. Как это свойство вызвать из контекстного меню компонента (соответствующий пункт уже добавил) наподобие "Columns Editor ..." в DBGrid-е?


 
Skier ©   (2003-04-21 13:08) [1]

TComponentEditor.ExecuteVerb


 
LikeLamer ©   (2003-04-21 13:15) [2]

Поясню ситуацию. До ExecuteVerb уже давно добрался, но что писать в теле самой процедуры?


 
Skier ©   (2003-04-21 13:21) [3]

1) напиши override
(т.е. TYourComponentEditor.ExecuteVerb; override;)
2) В теле TYourComponentEditor.ExecuteVerb напиши :
begin
ShowMessage("Hello, world !");
end;
3) Если при клике в контекстном меню увидишь Hello, world !
значит идёшь в верном направлении...и дальше ничего
сложного быть не должно...




 
LikeLamer ©   (2003-04-21 13:23) [4]

Вот дальше сложности и начинаются


 
Skier ©   (2003-04-21 13:26) [5]

1) Hello, world ! увидел ?
2)
> Вот дальше сложности и начинаются

Какие ?


 
LikeLamer ©   (2003-04-21 13:30) [6]

Сложности в следующем. Свойство имеет тип TCollection, в инспекторе объектов вызывается до безобразия просто - по трем точкам. А как его вызвать программно?


 
Skier ©   (2003-04-21 13:37) [7]

см. ShowCollectionEditorClass и ShowCollectionEditor


 
LikeLamer ©   (2003-04-21 13:50) [8]

Спасибо. В принципе до ShowCollectionEditorClass я тоже добирался, но там начались проблемы типа ХХХ.dcu not found etc. Как тут бороться - я уже не знаю. То ли Дельфа кривая, то ли я.
Все равно, спасибо.


 
Skier ©   (2003-04-21 13:54) [9]

>LikeLamer
1) Пропиши путь к подкаталогу ToolsAPI
(в Environment Options|Libarary|Library Path)
2) (судя по subj у тебя, D5, так что с Proxies.pas проблем
быть не может...)


 
LikeLamer ©   (2003-04-21 14:08) [10]

Не судите строго, но ситуация следующая.
ToolsAPI заюзан, а что такое Proxies.pas моя машинка не знает вообще. Пакет с компонентом компилится без проблем, а проект, использующий компонент не компилится вообще, и именно в этот момент и лезут все ошибки.


 
Skier ©   (2003-04-21 14:10) [11]

>LikeLamer

> а проект, использующий компонент не компилится вообще, и
> именно в этот момент и лезут все ошибки.

1) Какие ошибки ? Подробнее...


 
LikeLamer ©   (2003-04-21 14:24) [12]

Ошибки следующие:
File libintf.dcu not found.
В сетке поискал, а там про этот файл такого понаписано, что типа он не поставляется ни в каком виде, а входит в vcl50.bpl. Билдить проект надо с включенной опцией Build with runtime packages. Начинаю все это делать - перестает находить еще какие-то .dcu.


 
LikeLamer ©   (2003-04-21 14:46) [13]

Дописка.
1. В компилируемом проекте включаем опцию Build with runtime packages.
2. В конец строки под галкой дописываем ;dclstd50 (если там этого нет)
3. После этого все начинает работать


 
Skier ©   (2003-04-21 14:48) [14]

Код компонента в студию !


 
LikeLamer ©   (2003-04-21 15:17) [15]

А может лучше не код, а способ войны с этим извратом?! Никакие другие способы, кроме приведенного не помогают, или я их еще не нашел.


 
Skier ©   (2003-04-21 15:23) [16]

>LikeLamer
Правильный код лучший способ войны с извратом !



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

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

Наверх




Память: 0.5 MB
Время: 0.017 c
14-12885
Fill181
2003-04-09 21:02
2003.05.05
вычисление дифференциала


6-12858
Guzz
2003-03-09 14:25
2003.05.05
Вопрос по открытию приложения


3-12620
kravchuk
2003-04-15 14:58
2003.05.05
Connection Log


6-12844
bomberman
2003-02-24 02:29
2003.05.05
Как соеденить два модема между собой


8-12839
bigcrush
2003-01-28 15:31
2003.05.05
Где есть описание PNG