Hi, Wer kann helfen beim nutzen des Canvasobjects laden eines Bildes tritt s. code
Exception der Klasse EAcessvioalition auf.
Wie kann ich auf dem canvas der Tshape-Komponente zeichnen.
Bei d3 brauchte ich nur eine instanz erzeugen
s:=ts.Create(form1);
s.Parent:=form1;
s.Width:=180;
s.Height:=270;
und dann cannvas.zeichenroutinen fertig
Wie mache ich das bei D6 Personal um auf die ZeichenFläche mit canvas.Routinen zu greifen.
Das shapeobject soll dann auf auser die Standartdshapes wie stellipse
mit Polygon Dreiecke oder andere Figuren Zeichnen.
Nur mit Image,Form habe ich keine Problehme der Art.
Aber Paintbox,Tpanel......u.s.w
var canvas:Tcanvas
Muss ich hier die canvas:=Tcanvas.create(self)
oder property canvas:Tcanvas read ...... write...... Defaults ..
Habe auch im Forum nichts gefunden auser in Groupbox zeichnen
oder s.canvas.handle
oder
api get....DC:HDC
Vielen Dank im voraus
biochip
Delphi-Quellcode:
constructor ts.create(aowner:tcomponent);
begin
inherited create(aowner);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Try
s.Brush.Bitmap.Width:=186;
//Hier Fehlermeldung Exception der Klasse Eacessvioalition
s.Brush.Bitmap.height:=276;
s.Brush.Bitmap.PixelFormat:=pf8bit;
//Das Bild hat 8 Pixel pro Bit 256 Farben
s.Brush.Bitmap.LoadFromFile('
figurx2.bmp');
//s.Brush.Bitmap.Canvas.Rectangle(0,0,200,200);
// s.canvas. .......
except
s.free;
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
s:=ts.Create(form1);
s.Parent:=form1;
s.Width:=180;
s.Height:=270;
end;