Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Medium,
16. Sep 2009
Södale, gebaut und leider ein Problem festgestellt, welches der Grund war weshalb ich das überhaupt rekursiv gemacht hatte. Ein Bild sagt mehr als 1000 Worte, siehe Anhang.
Ich musste auch noch eine Kleinigkeit anpassen, da ein TControl selbst noch keinen Canvas hat. TButton z.B. hat auch keinen, weshalb das Ganze nicht gegangen wäre, wenn der Parent kein TGraphicControl oder TCustomControl...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Medium,
15. Sep 2009
Das mit der ClipRegion klingt sehr interessant, und in der Tat müssen bei der Rekursion ggf. Elemente mehrfach gezeichnet werden. Das werde ich doch gleich morgen mal antesten!
Was die Timer angeht: Nein, es sind natürlich nicht so viele Timer! Der wird natürlich erst erstellt sobald ein Element auf blinkend gesetzt wird, bzw. freigegeben wenn auf starre Füllung zurück geschaltet wird. Im...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Medium,
14. Sep 2009
Letzter Beitrag. Das Problem mit der Z-Order und nicht eigenen Komponenten lässt sich durch eine kleine nette Rekursion ja doch recht elegant lösen. Anbei die etwas bereinigte und rekusrsive Form:
procedure TMyGraphObject.RepaintOverlapping(item: TControl);
var
i, itemIndex: Integer;
begin
itemIndex := High(Integer);
for i := 0 to Parent.ControlCount-1 do
begin
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Medium,
14. Sep 2009
Aloah!
Ich verzweifel gerade am simplen Neuzeichnen meiner selbst gebauten Komponenten. Diese sind direkt von TGraphicControl abgeleitet, und tragen einen kleinen Timer mit sich herum der sie auf Wunsch blinken lässt. Jeder "Blink" muss dabei dann natürlich neu gezeichnet werden, was ich bisher einfach über ein Repaint gemacht hatte.
procedure TMyGraphObject.BlinkProc(Sender: TObject);...