![]() |
Optimierung des Codes
Liste der Anhänge anzeigen (Anzahl: 2)
Hey Community,
Ich hab mir einen kleinen Graph gebastelt, der später die Frequenzkurve eines Equalizer enthalten soll! Dazu hab ich mir eine Rohanwendung gebaut, welche den Graph per WinAPI zeichnet! (Dies hab ich gemacht, um größe der Anwendung zu sparen) Die Anwendung hab ich jetzt soweit hinnbekommen, das ich zufrieden bin mit dem Ergebnis, nun hab ich 2 Fragen/Bitten: 1. Wie kann ich das ganze so umwandeln, das ich danach eine Sinnvolle Funktion rausbekomme! Stelle mir da etwa sowas vor:
Delphi-Quellcode:
2. Wie kann man den bestehenden Code optimieren?? Ich habe mir das ganze in mühseliger klein Arbeit zusammengebastelt, denke aber das ist so nicht optimal :roll:
function MakeGrap(GraphWidth, GraphHeight: integer): HBITMAP;
Vllt habt Ihr verbesserungs vorschläge! Anbei hab ich einmal das Projekt, in dem sich der Code zum erstellen des Graphs befindet, und ein Screenshot, welcher zeigt, wie es ungefähr aussehen soll! Anmerkung, das Bild ist von einem anderen OpenSource MediaPlayer Projekt, hat mir so aber ganz gut gefallen, deswegen hab ich das so übernommen! |
Re: Optimierung des Codes
Warum packst du deinen Code nicht in eine Klasse?
Du musst nicht alles in einer Funktion realisieren. Vorallem ist dein Code sehr unflexibel, da du nur eine Funktion WndProc hast. Deine Klasse hat Inputparameter (Windowhandle, top, left, width, height), sowie weitere Properties (Backgroundcolor, foregroundcolor). Innerhalb der Klasse gibt es mehrere private Prozeduren (ZeichePunkteGrid, ZeichenHintergrund,...) und eine Hauptprozedur. Und keine Sorge, durch die Verwendung einer Klasse verlierst du nur 2 bis 3 Mikrosekunden, kommst aber auf einen ganz anderen Level der Programmierens. |
Re: Optimierung des Codes
Mhh naja, ich denke das für mich nicht so sinnvoll, da ich das Bild ja später weiter verwenden will und mit der Funktion, jedesmal des Bild neu bekommen will!
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:56 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-2025 by Thomas Breitkreuz