Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Form-Layout oder : Wie viel Grafik macht Sinn? (https://www.delphipraxis.net/2989-form-layout-oder-wie-viel-grafik-macht-sinn.html)

Sharky 17. Feb 2003 12:16


Form-Layout oder : Wie viel Grafik macht Sinn?
 
Hai,

ich bin eben dabei das Layout meiner MP3-Verwaltung etwas aufzumotzen.

Ich habe das ewige Windows grau satt :-)

Nun die Frage:

Wie viel Grafik macht noch Sinn?
Das Problem ist ja z.B.: Wenn ich ein "schönes" Hintergrundbild für das Formular verwende flackert das ganze beim verändern der Größe.
Abhilfe wäre:

a) Grafik weglasen
b) das Verändern der Größe nicht zulassen.

Was meint ihr denn dazu?

Erfahrungen?

janjan 17. Feb 2003 12:21

Probier das mal im OnCreate-Ereignis:

Delphi-Quellcode:
DoubleBuffered := True

jbg 17. Feb 2003 12:21

Wie wäre es mit WM_ERASEBKGND zu schreiben und dort das Hintergrundbild zu zeichnen und inherited weg zu lassen.

BrainCode 17. Feb 2003 12:34

Was macht denn DoubleBuffered? Funktioniert das so, wie bei modernen Grafikkarten? Ein Speicherbereich wird angezeigt, ein zweiter wird bearbeitet, und wenn der versteckte angezeigt werden soll, werden einfach beide vertauscht (bzw. die Pointer werden vertauscht)???

Ich habe mal mit so was ähnlichem wie DarkBasic ein kleines Spiel programmiert. Diese Programmiersprache ist eine vollständige Basic-Umgebung mit DirectX-Support.

janjan 17. Feb 2003 12:38

Zitat:

Die Eigenschaft DoubleBuffered bestimmt, ob das Bild des Steuerelements direkt in das Fenster gerendert oder zunächst in ein Speicher-Bitmap gezeichnet wird.

Delphi-Syntax:

property DoubleBuffered: Boolean;

C++ Syntax:

__property bool DoubleBuffered = {read=FDoubleBuffered, write=FDoubleBuffered, nodefault};

Beschreibung

Hat DoubleBuffered den Wert false, wird das fensterorientierte Steuerelement direkt in das Fenster gezeichnet. Ist DoubleBuffered true, zeichnet sich das fensterorientierte Steuerelement in ein Speicher-Bitmap, das dann zum Zeichnen des Fensters verwendet wird. Durch die Doppelpufferung tritt weniger Flimmern beim Neuzeichnen des Steuerelements auf. Auf der anderen Seite wird jedoch mehr Speicher benötigt.

Ist ein fensterorientiertes Steuerelement ein Docking-Standort mit zugeordnetem Docking-Manager, muß die Doppelpufferung verwendet werden.

Hinweis: Einige Steuerelemente, wie z.B. TRichEdit, können sich nicht selbst in ein Bitmap zeichnen. Für solche Steuerelemente müssen Sie DoubleBuffered auf false setzen.

Hansa 17. Feb 2003 12:42

Re: Form-Layout oder : Wie viel Grafik macht Sinn?
 
Zitat:

Zitat von Sharky
Ich habe das ewige Windows grau satt :-)

Ich auch. Aber wie siehts denn sonst aus ? Ich meine mit dem Layout. Ein Hintergrundbild ist ja schön und gut, aber dann ist der Rest immer noch grau. Ich habe jetzt mal alle Felder, die auf Doppelclick reagieren können, blau eingefärbt. Wie kann ich aber jetzt sagen, daß ich projektweit für solch eine Eigenschaft oder etwa für einen Komponententyp eine Farbe festlegen kann :?: Das mit dem Doppelclick habe ich für jedes Feld einzeln im OI eingestellt, aber auf Dauer ist das wohl nichts.

Sharky 17. Feb 2003 12:46

Zitat:

Zitat von janjan
Probier das mal im OnCreate-Ereignis:

Delphi-Quellcode:
DoubleBuffered := True

Jep, damit ist es schon deutlich besser. Danke.

Sharky 17. Feb 2003 12:51

Re: Form-Layout oder : Wie viel Grafik macht Sinn?
 
Zitat:

Zitat von Hansa
Ich auch. Aber wie siehts denn sonst aus ? Ich meine mit dem Layout. .....

Ich habe mal hier die Layout-Version hinterleg (660kByte).

Die Funktionen kommen erst am WE von der Standard-Version rein.

janjan 17. Feb 2003 13:21

Zitat:

Zitat von Sharky
Zitat:

Zitat von janjan
Probier das mal im OnCreate-Ereignis:

Delphi-Quellcode:
DoubleBuffered := True

Jep, damit ist es schon deutlich besser. Danke.

aber vorsicht, das klappt nur bis zu einer best. Fenstergröße richtig. bei mir war irgendwo bei 800*700 Schluß mit flüssigem Fenstergröße ändern. Hab leider die Daten nicht mehr genau im Kopf, ich glaub sobald Höhe*Breite über 0,5 Millionen gingen war das Fenstergröße ändern eine sehr zähe Angelegenheit mit 100% Prozessorauslastung.

Luckie 17. Feb 2003 15:11

Also irgendwie, ich weiß nicht. Durch die Kontrolelemente kann man das Hintergrund-Bitmap nicht mehr richtig erkenne, was es somit eigentlich wertlos macht und außerdem, kann man sich irgendwie nicht richtig auf die Anwendung konzentrieren, da man immer versucht zu erkennen, was das Hintergrund-Bitmap darstellt. Und was hat das Hintergrund-Bitmap thematlich mit einem MP3-Player zu tun?


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:18 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz