Главная страница
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.013 c
1-12715
Zelius
2003-04-22 21:21
2003.05.05
Как экзешнику сапдейтить самого себя?


3-12625
Cranium
2003-04-14 17:28
2003.05.05
Как лучьше реализовать следующее


14-12934
EAlexander
2003-04-18 11:32
2003.05.05
Пиво


3-12612
Alex_t
2003-04-15 13:00
2003.05.05
Помогите с stored procedure


14-12893
Soft
2003-04-16 19:01
2003.05.05
Использование несколько цветов в тексте