| Delphi Tips & Tricks | softsale > Delphi Tips & Tricks |
| < poprzednia rada | następna rada > |
Dostępowanie do własności i metod komponentu typu protected
W celu dostępu do metody lub własności komponentu ,która nie została upubliczniona (published), można utworzyć odpowiedniego potomka danej klasy (z upublicznioną własnością) a następnie zainstalować ten nowy komponent na palecie komponentów. Jest to kłopotliwe. Na przykład chcemy dostępować do własności canvas komponentu TPanel. Zamiast instalować potomka TPanel z własnością canvas typu published Published property canvas; wystarczy utworzyć nowy typ np tp=class(TPanel). Jeśli chcemy np narysować prostokąt na panelu wystarczy napisać: tp(panel1).canvas.Rectangle(10,10,30,30); W przykładzie tip21.zip na panelu wyświetlana jest bitmapa, rysowany prostokąt i bezpośrednio używana funkcja TextOut. Realizowane jest to po kliknięciu myszką na panelu.
.......
{$R *.DFM}
implementation
{$R *.DFM}
procedure TForm1.Panel1Click(Sender: TObject);
var
Bitmap : TBitMap;
begin
Bitmap := TBitmap.Create;
try
with Bitmap do
begin
LoadFromFile('softsale.bmp');
Transparent := True;
TransParentColor := BitMap.canvas.pixels[50,50];
tp(panel1).Canvas.Draw(0,0,BitMap);
TransparentMode := tmAuto;
end;
finally
Bitmap.Free;
end;
tp(panel1).canvas.rectangle(280,200,10,50);
tp(panel1).canvas.TextOut(30,70,'tel/fax:6296181');
tp(panel1).canvas.TextOut(30,90,'email:softsale@pagi.pl');
tp(panel1).canvas.TextOut(30,110,'www.softsale.com.pl');
tp(panel1).canvas.TextOut(30,130,'Zapraszamy na kurs DELPHI...');
end;
|
|
SOFTSALE - Oprogramowanie i Szkolenia softsale@softsale.com.pl 03-565 Warszawa , ul. Borzymowska 43 lok. 301C tel/fax:4084840,GSM:0607612428 |