Einzelnen Beitrag anzeigen

Benutzerbild von cruiser
cruiser

Registriert seit: 23. Dez 2003
Ort: Königsbrück/Sachsen
455 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: Performance bei vielen Images & Auflösung

  Alt 20. Mär 2006, 01:49
Turbo wollt es so sagen (hoff ich):

1.) behalt die Koordinaten der 'Buttons' im Kopf (oder besser: errechne sie)
2.) Pack deine Bildschnippsel in eine (oder mehrere) ImageList(s)
3.) Reagiere auf onMouseMove, onMouseDown und onMouseUp des Hintergrund-Images (die geben auch die Koordinaten der Maus zurück)
4.) Errechne ob und über welchem 'Button' die Maus bewegt/geklickt wurde
5.) Zeichne deine Bildschnipsel mit folgender Funktion direkt auf das Bild (statt Images an und aus zu schalten / Die Funktion ist auch in der Delphi-Hilfe zu finden):
Delphi-Quellcode:
ImageList.Draw(Image.Canvas, x, y, index);

(***( Erklaerung: )****************************)
(* ImageList - deine ImageList                *)
(* Image     - dein Hintergrund-Image         *)
(* x, y      - Koordinaten der oberen linke   *)
(*             Ecke des 'Buttons'             *)
(* index     - Die aufzumalende Button-       *)
(*             Grafik (die Erste hat Index 0) *)
(**********************************************)
6.) Raus mit den Labels die kannst du auch mit folgender Funktion direkt auf den Hintergrund zeichnen (ebenfalls in der Delphi-Hilfe zu finden):
Delphi-Quellcode:
Image.Canvas.TextOut(x, y, text);

(***( Erklaerung: )****************************)
(* Image     - dein Hintergrund-Image         *)
(* x, y      - Koordinaten der oberen linke   *)
(*             Ecke des Textes                *)
(* text      - Der aufzumalende Text          *)
(**********************************************)
  Mit Zitat antworten Zitat