Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi 2 probleme mit Image (https://www.delphipraxis.net/74215-2-probleme-mit-image.html)

Cöster 30. Jul 2006 16:51


2 probleme mit Image
 
Ich hab zwei Probleme mit einem Image:

1. Wenn ich ein Image per Drag & drop verschiebe, ist es an einigen Positionen unsichtbar, wenn ich es dann wieder bewege, wird es wieder sichtbar. Wenn ich es also ohne Pause über meine Form bewege flackert es.

2. Ich kann mein Image nicht über einem DrawGrid platzieren, das DrawGrid bleibt immer im Vordergrund.

Ich hoffe, ihr könnt mir bei meinen Problemen helfen. Danke.

Namenloser 30. Jul 2006 17:02

Re: 2 probleme mit Image
 
Zu problem 2: Das ist so, weil das DrawGrid im gegensatz zum Image ein Windows-Handle hat, d.h. es ist ein "eigenes" Fenster. Ein Image dagegen kann immer nur auf die Zeichenfläche seines Parents zeichnen. Wenn das Image nicht transparent sein soll versuch doch mal, es auf ein Panel zu pflanzen :wink:

Zu problem 1: Kann ich nichts zu sagen, weil ich mit drag&drop ehrlich gesagt noch nicht gearbeitet hab :oops:

gsh 30. Jul 2006 17:09

Re: 2 probleme mit Image
 
Zu problem 1: Es könnte vllt. helfen wenn du das Image DoubleBufferst:
Delphi-Quellcode:
image1.doublebuffered := true;

Namenloser 30. Jul 2006 17:18

Re: 2 probleme mit Image
 
Besitzt TImage diese Eigenschaft überhaupt? Ich dachte immer, die Eigenschaft DoubleBuffered wäre Komponenten mit Fensterhandle vorbehalten, oder irre ich mich :gruebel:
In diesem fall würde ich DoubleBuffered beim entsprechenden Parent auf true stellen

Cöster 30. Jul 2006 17:41

Re: 2 probleme mit Image
 
Zitat:

Zitat von NamenLozer
Zu problem 2: Das ist so, weil das DrawGrid im gegensatz zum Image ein Windows-Handle hat, d.h. es ist ein "eigenes" Fenster. Ein Image dagegen kann immer nur auf die Zeichenfläche seines Parents zeichnen. Wenn das Image nicht transparent sein soll versuch doch mal, es auf ein Panel zu pflanzen :wink:

Es soll transparent sein. Ich hab in FormCreate mal
Delphi-Quellcode:
Image1.Parent:=DrawGrid1;
geschrieben. Jetzt befindet es sich auf dem DrawGrid :lol:
Nun erkenne ich, dass das Image nicht sichtbar und unsichtbar wird, sondern immer zwischen der oberen linken Ecke des Parents hin und herspringt, wenn ich es bewege. (Deswegen bringt DoubleBuffered auch nix.)

Zitat:

Zitat von NamenLozer
Besitzt TImage diese Eigenschaft überhaupt? Ich dachte immer, die Eigenschaft DoubleBuffered wäre Komponenten mit Fensterhandle vorbehalten

Recht hast du, aber wie gesagt, DoubleBuffered löst das Problem nicht.

Edit: Statt mit Drag'n'Drop könnte ich es ja auch mit MouseMove, -down, und -up machen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:12 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