Форум: "Основная";
Текущий архив: 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