Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.01.23;
Скачать: [xml.tar.bz2];

Вниз

RegisterComponents   Найти похожие ветки 

 
Noname   (2004-01-13 13:27) [0]

Здравствуйте.

Не подскажете как зарегистрировать невизуальный компонент (типа MainMenu, ActionList, ...)? Пробовал RegisterComponents но как то не так получается :(

Спасибо.


 
Skier   (2004-01-13 13:30) [1]


> Пробовал RegisterComponents но как то не так получается
> :(

Подробнее !


 
Noname   (2004-01-13 13:46) [2]


> Skier © (13.01.04 13:30) [1]

компонент добавляется в палитру, но при помещении его на форму отображается просто прямоугольник пунктиром (прозрачный). Причем появляются свойства ширины и высоты (и другие), а они мне не нужны.

type
THintDesigner = class(THintWindow)
private
FGradColorBegin: TColor;
FGradColorEnd: TColor;
FFrameColor: TColor;
FGradDirect: TGradDirect;
FAngleVert: Integer;
FAngleHorz: Integer;
procedure SetGradColorBegin(const Value: TColor);
procedure SetGradColorEnd(const Value: TColor);
procedure SetFrameColor(const Value: TColor);
procedure SetGradDirect(const Value: TGradDirect);
procedure SetAngelVert(const Value: Integer);
procedure SetAngelHorz(const Value: Integer);
{ Private declarations }
protected
procedure Paint; override;
{ Protected declarations }
public
constructor Create(AOwner: TComponent); override;
{ Public declarations }
published
property GradColorBegin: TColor read FGradColorBegin write SetGradColorBegin;
property GradColorEnd: TColor read FGradColorEnd write SetGradColorEnd;
property FrameColor: TColor read FFrameColor write SetFrameColor;
property GradDirect: TGradDirect read FGradDirect write SetGradDirect;
property AngleVert: Integer read FAngleVert write SetAngelVert;
property AngleHorz: Integer read FAngleHorz write SetAngelHorz;
{ Published declarations }
end;

procedure Register;
begin
RegisterComponents("Standard", [THintDesigner]);
end;


и как нудно делать чтобы у него в ObjectInsoector были только свойства указанные в Published?


 
Skier   (2004-01-13 13:51) [3]

>Noname (13.01.04 13:46) [2]


> отображается просто прямоугольник пунктиром (прозрачный).


перекрывай CreateParams и WMNCHitTest


> появляются свойства ширины и высоты (и другие), а они мне
> не нужны.


Для ненужных свойств регистрируй nil-овый редактор свойства
(см. RegisterPropertyEditor)


 
Noname   (2004-01-13 13:53) [4]


> Skier © (13.01.04 13:51) [3]

спасибо за помощь попробую


 
Юрий Зотов   (2004-01-13 14:02) [5]

> Noname (13.01.04 13:46) [2]

> при помещении его на форму отображается просто прямоугольник
> пунктиром (прозрачный).

Вероятно, что Вы написали в Paint - то и происходит.

> Причем появляются свойства ширины и
> высоты (и другие), а они мне не нужны.

А Вы хотели, чтобы наследник THintWindow САМ вел себя как-то иначе?


 
Skier   (2004-01-13 14:07) [6]


> Noname (13.01.04 13:53) [4]

Да, Юрий прав : ещё на метод Paint обрати внимание


 
Noname   (2004-01-13 14:35) [7]

да в том и дело, что пробовал и без Paint вообще.
Вот например MainMenu положишь на форму получается квадратик с изображением, а я свой кладу пустое место :( в рамочке.


 
Юрий Зотов   (2004-01-13 14:38) [8]

> Noname (13.01.04 14:35) [7]

> Вот например MainMenu положишь на форму получается квадратик с
> изображением
От чего отнаследован TMainMenu?

> а я свой кладу пустое место :( в рамочке.
А от чего отнаследован ВАШ компонент?

Разницу чувствуете? Ваш компонент - ВИЗУАЛЬНЫЙ. Вот поэтому он и рисуется на форме.


 
Noname   (2004-01-13 14:40) [9]


> Юрий Зотов © (13.01.04 14:38) [8]

спасибо - теперь чувствую


 
Skier   (2004-01-13 14:40) [10]


> Noname (13.01.04 14:35) [7]

Всех запутал ! Чего хочешь сделать-то ?


 
Noname   (2004-01-13 14:42) [11]

компонент который хинт будет рисовать по своему


 
Skier   (2004-01-13 14:46) [12]


> компонент который хинт будет рисовать по своему

Компонент должен быть невизуальный.
И служить токмо лишь для настройки свойств хинта, который
будет "вмонтирован" внутрь твоего невизуальныого компонента
(в общем компонент по принципу, TOpenDialog, например...)


 
Noname   (2004-01-13 14:48) [13]

ну да собственно это и хочу сделать.
впринципе все написано для изменения хинта, вот только как это в компонент оформить пока толком не знаю


 
Skier   (2004-01-13 14:51) [14]

если уже есть хороший код, то оформить его в компонент совсем не сложно...


 
Noname   (2004-01-13 14:55) [15]

проблемы то возникли потому что первый раз пытаюсь компонент сделать.



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

Форум: "Основная";
Текущий архив: 2004.01.23;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.007 c
6-72866
Shutov
2003-11-10 08:11
2004.01.23
Загрузка bmp-картинок с помощью IdHTTP


14-72938
Nous Mellon
2004-01-01 00:04
2004.01.23
С наступившим!


3-72664
int64
2003-12-25 16:43
2004.01.23
Деревья, Delphi и MSSQL.


14-72875
lena19
2004-01-01 23:48
2004.01.23
нужна прога для смены битрейта в MP3 на более низкий


1-72751
Cosinus
2004-01-13 15:45
2004.01.23
Структура дельфишных файлов





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский