2011. március 27., vasárnap
How to use a TControlCanvas in a component
Problem/Question/Abstract:
How to use a TControlCanvas in a component
Answer:
TScrollingPaintBox = class(TScrollingWinControl)
private
FCanvas: TCanvas;
public
constructor Create(aOwner: TComponent); override;
destructor Destroy; override;
property Canvas: TCanvas read FCanvas;
end;
constructor TScrollingPaintBox.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
FCanvas := TControlCanvas.Create;
TControlCanvas(FCanvas).Control := Self;
end;
destructor TScrollingPaintBox.Destroy;
begin
FCanvas.Free;
inherited Destroy;
end;
A TControlCanvas is important because it creates a DC that belongs to the HWND of the control. Also, override is important on your constructor and destructor to ensure that they are actually called.
Feliratkozás:
Megjegyzések küldése (Atom)
Nincsenek megjegyzések:
Megjegyzés küldése