mam problem z image, gdy w trakcie działania programu zmieniam rozmiary image, rzeczy nadal są wyświetlane jedynie w obszarze ,który powstał wraz z uruchomieniem programu, natomiast nowy który dodaje w trakcie pracy programu ma inny kolor i jest jakby nie używany.
do pewnego mementu rozumiem Twoje pytanie, ale pozniej:
fr3on napisał(a)
[...] natomiast nowy który dodaje w trakcie pracy programu ma inny kolor i jest jakby nie używany.
ale co nowy? obszar, obraz, image..? opisz dokladniej w czym rzecz, i najlepiej rzuc jakims kodem.
Napisz jeszcze raz po polsku o co Tobie chodzi i co chcesz uzyskać,
to może ktoś będzie w stanie odpowiedzieć Tobie coś konkretniej ;/
EDIT: no i znowu mnie cimak ubiegł - nie odświeżyłem zakładki i nie
zawuażyłem że jest nowy post, ale On też nie do końca wiedzial ocb.
Image3.Canvas.LineTo(wykres_y, 355-wykres_x*50);
Image3.Canvas.MoveTo(wykres_y, 355-wykres_x*50);
wykres_x := 0;
wykres_y := wykres_y + 5;
if wykres_y >= Image3.Width then
Image3.Width:= Image3.Width + 100;
Chodzi o nowo powstały obszar, po dodaniu tych 100 pikseli nie mogę na nim nic narysować
sprawdz image1.picture:=nil przed zmiana rozmiaru i narysowaniem.
//edit: sprawdzilem, powiekszy obszar ale zamaze to co dotychczas bylo namalowane. mozesz albo przemalowac, albo zrobic inny "patent":
zapisac gdzies w pamieci to, co jest narysowane, powiekszyc obszar, narysowac to co w pamieci, zwolnic pamiec:
procedure TForm1.Button3Click(Sender: TObject);
var b:TBitmap;
p:TPoint;
begin
b:=TBitmap.Create;
b.Assign(image1.Picture.Bitmap);
p:=image1.Canvas.PenPos; //bo przy czyszczeniu traci sie tez informacje o aktualnej pozycji piora...
image1.Width:=350;
image1.Height:=250;
image1.Picture:=nil;
image1.Canvas.Draw(0,0,b);
image1.Canvas.PenPos:=p;
b.Free;
image1.Canvas.LineTo(300,50);
end;
bez zmiany, poza tym że trace to co było wcześniej narysowane.
fr3on napisał(a)
bez zmiany, poza tym że trace to co było wcześniej narysowane.
napisales akurat jak edytowalem swoj poprzedni post... sprawdz ten kod.
wielkie dzięki , działa [green]
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.