Hi uwewo,
mir ist noch was aufgefallen. in dieser Procedure
procedure TDateLine.UpdateDateLine;
ein UpdateItems ist nach deinem Verfahren dann auch schon mal die halbe Miete.
Desweiteren mußt du dafür sorgen, dass nach Eigenschaftsänderungen deines Item dieses auch aktualisiert wird.
Delphi-Quellcode:
{-----------------------------------------------------------------------------
Procedure: SetStartDate
Date: 19-Okt-2006
Arguments: Value : TDateTime
Result: None
Describtion: bei gleichen Werten ist ein Setzen unnötig und ein neu zeichnen
(Invalidate) unerwünscht
-----------------------------------------------------------------------------}
procedure TDateItem.SetStartDate(Value : TDateTime);
begin
if Value = FStartDate then Exit;
FStartDate := Value;
Invalidate;
end;
Verschiebe bitte die Function's von published in public!
Überlege, ob du für DateLine eine published-Eigenschaft StartDate anlegst. Das ist dann der erste Tag in der Anzeige.
gruß oki