jaa. ich habs geschafft. danke analle!!!
so sollte es sein. Allerdings ist mir erst am heutigen(!) tage aufgefallen, das man objekte nicht wie variablen zuweisen kann, sondern immr nur mit assign.
was passiert eigentlich mit meinen variablen wenn ich z.B. das hier mache:
// ACHTUNG!! absichtlich falscher code!!
font1 := font2;
Was passiert hierbei, wird da der Font1 Zeiger einfach überschrieben von font2??
(bedeutet das, Font1 wird dann immer noch font1 heissen allerdings mit den eigenschaften von font2 + die alte font1-
ram-speicherstelle bleibt verbaut und unaufrufbar)???
Delphi-Quellcode:
procedure Temaske_excel.Schriftartbearbeiten1Click(Sender: TObject);
begin
// objekt kreiren falls nicht existent.
if ca1[stringgrid1.Col,stringgrid1.Row] = nil then
ca1[stringgrid1.Col,stringgrid1.Row] := Tcell_attributes.Create;
if assigned(ca1[stringgrid1.Col,stringgrid1.Row].font) then
begin
fontdialog1.Font.Assign(ca1[stringgrid1.Col,stringgrid1.Row].font);
end else
begin
ca1[stringgrid1.Col,stringgrid1.Row].Font := Tfont.Create;
fontdialog1.Font.Assign(stdfont);
end;
if fontdialog1.Execute then
begin
ca1[stringgrid1.Col,stringgrid1.Row].font.Assign(fontdialog1.Font);
fontdialog1.Font.Assign(stdfont);
end;
end;