Hi hallinche,
klar, bei diagonalen Linien ist es natürlich vorbei mit den Bevels. Also mußt du dir wirklich ein geeignetes Basisobjekt suchen und deine eigenen Zeichenroutinen schreiben. Achte aber darauf, das es von TComponent abgeleitet ist. Dann nehme z.B. bei einem Panel nicht TPanel, sondern TCustomPanel...
Als nächstes würde ich erst mal genau sortieren, was du mit deiner neuen Komponente alles machen möchtest. Diese Idee ist nicht schlecht:
Zitat von
mkinzler:
Das mit einer festen Anzahl von Properties für die Punkte ist aber schlecht. Nimm lieber eine dynamische Anzahl von Punkten so kannst du statt Linien auch komplexere Linienzüge zeichen ( Polyline, Polygone)
wird aber bedeutend komplexer.
das automatische Zeichnen ist nicht weiter schlimm. Hier vererbst du die Paint-Methode via override und implementierst deine eigene Zeichenmethode.
Delphi-Quellcode:
procedure TMyObject.Paint;
begin
inherited;
MyPaint;
end;
In MyPaint schreibst du alles was du für dein Zeichen brauchst.
gruß oki