Czesc!
Mam taki problem - program rysuje wykres na canvasie formy 1 a jak chce miec ten sam wykres na formie drugiej.Dodam ze na drugiej formie bedzie ten wlasnie wykres i jeszcze pare tabel nie tylko sam wykres.Myslalem czy aby nie skorzystac z Copyrect ale nie wiem jakie dane wprowadzic aby poprawnie dzialalo.Prosze o pomoc
0
1
Form2.Image1.Canvas.CopyRect(
Rect(0,0,Form1.Image1.Width,Form1.Image1.Height), //Żródło z jakiego kopiujesz (wspolrzedne prostokata jaki kopiujesz)
Form1.Image1.Canvas, //Canvas tego źródła
Rect(0,0,Form2.Image1.Width,Form2.Image1.Height))); //gdzie kopiujesz
P.S. Ilosc nawiasow na koncu moze sie nie zgadzac :)
0
Dzieki wszystko dziala :)) za duzo o jeden nawias:))
Pozdrawiam!
0
Chcialbym zrealizowac kopiowanie zawartosci plotna do schowka systemowego - najpierw aby stworzona byla bitmapa, pozniej do bitmapy wczytalo zawartosc i ostaecznie skopiowalo zawartosc bitmapy do schowka:
procedure TForm1.KopiujobrazClick(Sender: TObject);
var
Bitmapa:TBitmap;
begin
Bitmapa:=TBitmap.create;
Bitmapa.width:=form1.Wykres.Width;
Bitmapa.height:=form1.Wykres.Height;
bitmapa.Canvas.CopyRect(Rect(0,0,Form1.Wykres.Width,Form1.Wykres.Height),Form1.Wykres.Canvas,clientrect);
clipboard.assign(Bitmapa);
Bitmapa.free;
end;
No i cos knoce z CopyRect - w nawiasie pierwsze to obszar zrodla, drugi zrodlo trzecie obszar wynikowego. Form1.Wykres to Paintbox ktorego zawartosc chce zrzucic do bitmapy jednak efekt powyzszego kodu to zrzut ekranowy canvasa form1 - co robie nie tak?
1
pewnie już tego nie przeczytasz ale napisze dla innych:
zamiast ClientRect wpisz: Rect(0,0,Form1.Wykres.Width,Form1.Wykres.Height) i będzie działać. Powodzenia.