Forum: Programmieren allgemein
Delphi
by TiGü,
5. Sep 2017
Du musst einfach viel mehr Sachen (zwischen)merken.
Auch der zweifache Aufruf von GetDesktopWindow ist ja Quatsch, das ändert sich ja innerhalb der beiden Aufrufe nicht.
Das kannst du auch zwischenspeichern.
Wahrscheinlich musst du darauf nicht mal GetDC holen, weil du das davor wahrscheinlich schon drölf mal machst.
Forum: Programmieren allgemein
Delphi
by TiGü,
5. Sep 2017
Auch wenn ich auch glaube, dass hier am falschen Ende gespart wird, möchte ich nochmal auf meinen Beitrag #20 zurückkommen.
http://www.delphipraxis.net/1380280-post20.html
Hier zeige ich im Screenshot explizit die Funktionsaufrufe, die am meisten Zeit benötigen.
Da kann man dann anfangen zu optimieren, indem man nicht für jeden String die ganzen Objekte neu erstellt, sondern nur einmalig und...
Forum: Programmieren allgemein
Delphi
by TiGü,
5. Sep 2017
Der Neutral General hat ja schon erklärt, warum es unsinnig ist sich die Ergebnisse zu merken und anschließend zu sortieren.
Nichtsdestotrotz möchte ich auf "Was anderes macht dein Code auch nicht!" mit folgenden Thread antworten:
http://www.delphipraxis.net/123215-positive-zahlen-negative-umwandeln.html
Bitte lese ihn aufmerksam durch.
Alle Lösungen zur Aufgabenstellungen bringen das...
Forum: Programmieren allgemein
Delphi
by TiGü,
4. Sep 2017
Der Vorschlag bringt dich auch nicht weiter.
Da muss man auch nichts sortieren.
PseudoCode:
function GetTextWidth(MyStrings: TStrings {ja, nur ein Beispiel, kannst auch Array nehmen}): Integer;
var
Result, NewWidth: Integer;
MyString: string;
begin
Forum: Programmieren allgemein
Delphi
by TiGü,
4. Sep 2017
Bist du fertig mit editieren oder kann man mal antworten?
Immer diese Unart, die Beiträge nachträglich zu editieren und neues Zeug rein zuschreiben, anstatt einen neuen Beitrag zu erstellen.
Kannst du dir das nicht mal abgewöhnen? :roll:
Die von dir genannte Funktion ist bspw. bei mir so definiert:
//----------------------------------------------------------------------------
//...
Forum: Programmieren allgemein
Delphi
by TiGü,
4. Sep 2017
Das ist doch eine ganz normale Frage?
Sind wir heute wieder besonderes dünnhäutig?
Anbei noch ein Screenshot des Line Timer von der Nexus Quality Suite (https://www.nexusdb.com/support/index.php?q=linetimerfeatures).
Die Funktion habe ich 100 mal aufgerufen und in der linken Spalte siehst du die Zeiten in Millisekunden.
Alles größer 0,5 habe ich mal farblich markiert.
Du könntest also...