Hallo allerseits!<br>
Ich hab mal eine eher stilistische Frage. :-)<br>
Es gehört ja zum guten Ton, am Ende einer Zeichenroutine
die Ressourcen, die man geändert hat (Pen.Color, Brush.Style, ...),
wieder in den Ursprungszustand zurückzuversetzen.
Wie macht ihr denn das?
<p>Ich habe das bisher immer mit einzelnen Integer-/Enum-Variablen gelöst
-- eine pro "angefasstes" Property. Das ist aber (a) langweilig und (b)
fehleranfällig: Setzt man z.B. Brush.Style auf bsClear, so darf man
nicht vergessen, außer Brush.Style auch Brush.Color zu merken und zu wiederherzustellen.
<p>Eine bessere Lösung wäre vermutlich, die Methoden GetData und SetData
zu verwenden, nur sind die leider privat und mir fällt kein Trick
ein, diesen Umstand zu umgehen.
<p>BTW: Ich benutze D5, drum kann ich die TRecall-Geschichten nicht
verwenden. Nach einem kurzen Blick darauf scheinen mir die
auch etwas viel Overhead zu erzeugen (Ressource inkl. Handle allozieren und so).
<p>Vielen Dank im Voraus für eure Ideen,<br> Uli.
Ich hab mal eine eher stilistische Frage. :-)<br>
Es gehört ja zum guten Ton, am Ende einer Zeichenroutine
die Ressourcen, die man geändert hat (Pen.Color, Brush.Style, ...),
wieder in den Ursprungszustand zurückzuversetzen.
Wie macht ihr denn das?
<p>Ich habe das bisher immer mit einzelnen Integer-/Enum-Variablen gelöst
-- eine pro "angefasstes" Property. Das ist aber (a) langweilig und (b)
fehleranfällig: Setzt man z.B. Brush.Style auf bsClear, so darf man
nicht vergessen, außer Brush.Style auch Brush.Color zu merken und zu wiederherzustellen.
<p>Eine bessere Lösung wäre vermutlich, die Methoden GetData und SetData
zu verwenden, nur sind die leider privat und mir fällt kein Trick
ein, diesen Umstand zu umgehen.
<p>BTW: Ich benutze D5, drum kann ich die TRecall-Geschichten nicht
verwenden. Nach einem kurzen Blick darauf scheinen mir die
auch etwas viel Overhead zu erzeugen (Ressource inkl. Handle allozieren und so).
<p>Vielen Dank im Voraus für eure Ideen,<br> Uli.