Mam coś takiego:
.....
with TShape.Create(Okno.Uklad) do
begin
Brush.Color := K;
Shape := stEllipse;
Width := 5;
Height := 5;
Left := Okno.Uklad.Left + x;//Px + Form1.Im.Left;
Top := Okno.Uklad.Top + y;//Py + Form1.Im.Top;
Parent:= Okno;
Visible := True;
OnMouseDown := Okno.LapPunkt;
OnMouseUp := Okno.PuscPunkt;
OnMouseMove := Okno.NaPunkt;
//if K = clRed then Name := 'G' + IntToStr(i);
ShowHint := True;
Hint := IntToStr(x - 50) + ',' + IntToStr(Round( (o - y - 50) / skalay )) ;
end;</span>
....
Opis:
Okno to forma
Uklad to TImage;
K jakis kolor
zmienne nie są tu ważne
Tworzą mi się piękne punkciki, które po spełnieniu swojej roli chciałbym usunąć.
Podczas wczytywania nowych danych pojawiają się nowe punkty a stare nie znikają i nie chodzi mi o tylko ukrycie ich ale całkowite wykasowanie.
Uklad (TImage) odświerzam i wszystko z niego znika - chodzi o Cancas. A punkty TShape'y, które są dziećmi formy (Okna) niestety nie i nie wiem jak się ich pozbyć.
Wczytuję dane wykorzystując TOpenDialog więc nie mam odwołania do zdarzeń w TShape. Może jest jakiś sposób połączenia tego. Nie wiem jak dobrać się - odwołać do tych dynamicznych obiektów.
Potrzebuję sposobu na dynamiczne usunięcie tych dynamicznych TShape'ów, lub jeżeli, ktoś z was zna prostszy sposób stworzenia czegoś na Obiekcie TImage co można przesuwać za pomocą myszki i zmieniać wartości to bardzo proszę o pomoc.