..wo kommen denn diese "magischen" Werte her?
Delphi-Quellcode:
getHeight[0] := round(FSize[0] * 0.31919 + FHeight * Boxplot);
getHeight[1] := round(FSize[0] * 0.13214 + FHeight * Boxplot);
getHeight[2] := round(FSize[0] * 0.18379 + FHeight * Boxplot);
getHeight[3] := round(FSize[0] * 0.04839 + FHeight * Boxplot);
getHeight[4] := round(FSize[0] * 0.09839 + FHeight * Boxplot);
getHeight[5] := round(FSize[0] * 0.21839 + FHeight * Boxplot);
getHeight[6] := round(FSize[0] * 0.15839 + FHeight * Boxplot);
getHeight[7] := round(FSize[0] * 0.26839 + FHeight * Boxplot);
getHeight[8] := round(FSize[0] * 0.28839 + FHeight * Boxplot);
getHeight[9] := round(FSize[0] * 0.27742 + FHeight * Boxplot);
Wie man der Procedure entnehmen kann ist sie ein Teil der Klasse.
FSize und FHeight sind Variablen der Klasse welche beim erstellen gesetzt werden. Ebenfalls werden diese bei dem ändern der Fenstergröße gesetzt.
-> in FSize ist die Fenstergröße und in FHeight die Größe eines Boxplots (relativ zur Fenstergröße).
-> Boxplot : Boxplot welcher gerade gezeichnet wird, muss demnach auch variable sein.
Um es lesbarer zu gestalten, vielleicht die Werte durch Konstante ersetzen.
Oder die Werte in ein Array stecken, mit den gleichen Indizes wie getHigh.
Dann könntest Du das alles in eine Schleife von 0 bis 9 abarbeiten.
Grüße
Klaus
Wie oben beschrieben, kann ich die Werte nicht durch konstanten ersetzen.
Die Werte sind abhängig der Fenstergröße und ändern sich demnach, wenn man die Größe des Fensters verändert.