Forum: Algorithmen, Datenstrukturen und Klassendesign
by Zacherl,
22. Mär 2016
Beim Verschieben und Parent ändern gebe ich dir recht. Beide Vorteile hat man aber auch bei der sauberen Kapselung in eine eigene Komponente, was definitiv meine bevorzugte Lösung wäre, denn Codetrennung kann ich bei der PaintBox ehrlich gesagt nicht wirklich sehen. Sowohl dort, als auch in meinem Testcode, landen die Routinen irgendwo als Methoden des Formulars.
@hochundweit:
Mit wie vielen...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Zacherl,
22. Mär 2016
Hatte ich erst so, allerdings macht das keinen Unterschied, da die PaintBox sowieso nur auf das Canvas vom Parent (in diesem Falle das Form) zeichnet. Direkt das Form zu benutzen hat mir einen ClientToParent Aufruf vor dem InvalidateRect erspart. Sinnvoll wäre höchstens die Kapselung in eine komplett eigene Komponente.
Die ersten beiden Punkte macht mein Beispielcode ja nicht anders. Full...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Zacherl,
22. Mär 2016
Hier mal mein auf die Schnelle gebastelter Ansatz:
type
TChipData = record
public
Quality: Integer;
HasFocus: Boolean;
end;
var
ChipData: array of array of TChipData;