AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Canvas-Methoden ab Windows 6.x / Vista oft sehr verzögert
Thema durchsuchen
Ansicht
Themen-Optionen

Canvas-Methoden ab Windows 6.x / Vista oft sehr verzögert

Ein Thema von Delphi-Laie · begonnen am 11. Nov 2015 · letzter Beitrag vom 12. Nov 2015
 
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#9

AW: Canvas-Methoden ab Windows 6.x / Vista oft sehr verzögert

  Alt 12. Nov 2015, 13:00
Ok. Es funktioniert. Dann können wir ja damit anfangen den Code zu verschönern:
Delphi-Quellcode:
procedure linie_zeichnen(x:word;darueber_loeschen:boolean);
begin
application.processmessages;
if ((Form1.ComboBox1.ItemIndex=4) or (Form1.ComboBox1.ItemIndex=20)) and not Form1.Visible
then Form2.Canvas.Pen.Color:=clblack
else Form2.Canvas.Pen.Color:=Menge[x].farbe;
Form2.Canvas.MoveTo(x,pred(Form1.SpinEdit3.Value));
Form2.Canvas.LineTo(x,Form1.SpinEdit3.Value-Menge[x].schluessel);
if darueber_loeschen then
  begin
  Form2.Canvas.Pen.Color:=clWhite;
  Form2.Canvas.LineTo(x,0)
  end;
if sortierung_laeuft and bremse_erlaubt then for x:=1 to bremse do windows.beep(0,0)
end;
Hier hast du mindestens zwei Abhängigkeiten von der Oberfläche drin und zu dem noch von zwei Formularen. Die Wiederverwendbarkeit geht da gegen null. Mach daraus eine Klasse, der du die nötigen Werte übergibst und sag der Funktion auf welchen Canvas sie zeichnen soll. Dann ist es egal, woher die benötigten Werte kommen und auf welchen Canvas das ganze gezeichnet wird.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:24 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz