Вниз
Скачать: CL | DM;

Помогите с созданием компонента   Найти похожие ветки 

← →
tytus   (2006-03-21 13:22) [0]

Добрый день мастера. Пытаюсь создать наследник TCustomControl (в нем есть канва и хендл). Мне нужно чтобы было что-то похожее на Button, но чтобы были события OnMouseEnter и OnMouseLeave. Сообщения компонентом перехватываются (CM_MOUSEENTER...), но только компонент не прорисовывается на форме. Как правильно сие оформить?


← →
clickmaker ©   (2006-03-21 13:25) [1]

Перекрыть Paint и в нем рисовать


← →
tytus   (2006-03-21 13:29) [2]

>clickmaster[1]
 protected
   { Protected declarations }
   procedure Paint;override;
...
procedure TClButton.Paint;
var
 ClRect:TRect;
begin
ClRect:=BoundsRect;
Frame3D(Canvas,clRect,FOnColor,FBottomColor,2);
end;
... и ничеГО!!!


← →
clickmaker ©   (2006-03-21 13:30) [3]


> tytus   (21.03.06 13:29) [2]

а что должно быть?


← →
tytus   (2006-03-21 13:33) [4]

>[2]
Frame3D рисует 3D рамку вокруг компонента у которого есть канва.(ExtCtrls)


← →
balepa ©   (2006-03-21 13:38) [5]

Может еще inherited после
ClRect:=BoundsRect;
Frame3D(Canvas,clRect,FOnColor,FBottomColor,2);


← →
tytus   (2006-03-21 13:42) [6]

и еще, когда устанавливаю компонент, то выдается ошибка <Abstract Error>


← →
MBo ©   (2006-03-21 13:43) [7]

Ну рисуется уголок слева-вверху. Так что ищи ошибку у себя

 TMy=class(TCustomControl)
  protected
    procedure Paint; override;
 end;

procedure TMy.Paint;
var
 R: TRect;
begin
 R:=BoundsRect;
 Frame3D(Canvas, R, clGreen, clWhite, 3);
end;

procedure TForm3.Button2Click(Sender: TObject);
begin
 with TMy.Create(Self) do begin
   Parent:=Self;
   BoundsRect:=Rect(10,10,100,100);
 end;
end;



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.024 c
2-1142942855
Scavenger
2006-03-21 15:07
2006.04.02
Ping ПК


2-1142675907
VitV
2006-03-18 12:58
2006.04.02
Очистака элементов формы....


15-1141740830
sniknik
2006-03-07 17:13
2006.04.02
Программный рейд, striple... WinXP


15-1142276599
Ломброзо
2006-03-13 22:03
2006.04.02
Как получить список сервисов...


1-1141243953
g-l-u-k
2006-03-01 23:12
2006.04.02
Криптование процедуры в Delphi




   Наверх