Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi auf jedes repaint was machen (https://www.delphipraxis.net/29067-auf-jedes-repaint-machen.html)

glkgereon 3. Sep 2004 13:34


auf jedes repaint was machen
 
hi

ich hab was inner code-lib gestöbert, und da ist mir unter anderem das hier in die hände gefallen:
http://www.delphipraxis.net/internal...e1acf99806190e

den Bildschirm invertieren...

dort steht nun aber, das das nur bis zum nächsten repaint gilt..

wie kann ich das denn bei jedem repaint aufrufen?

mirage228 3. Sep 2004 13:45

Re: auf jedes repaint was machen
 
Hiho,

dein Form hat das nette Event OnPaint - Vielleicht hilft dir des weiter ;)

mfG
mirage228

Jörn 3. Sep 2004 13:47

Re: auf jedes repaint was machen
 
Er braucht aber ein OnPaint des gesamten Bildschirms bzw jedes einzelnen Bilschirmelements - und das wird wohl schwieriger.

mirage228 3. Sep 2004 13:50

Re: auf jedes repaint was machen
 
Hi,

achso, dann könntest du versuchen das WM_PAINT vom Desktop irgendwie abzufangen...
Wie du das anstellst, weiss ich allerdings nicht genau. Ich nehme an, dass du die WndProc vom Desktop manipulieren musst (falls das möglich ist...)

mfG
mirage228

glkgereon 3. Sep 2004 14:08

Re: auf jedes repaint was machen
 
kann man das in nem bestimmten taklt machen?

so einmal im onpaint anfangen und dann mim timer auf 60 Hz laufen lassen oder so?

Dax 3. Sep 2004 14:39

Re: auf jedes repaint was machen
 
Wenn du es im Takt machst, kann es sein, das du den Bildschirm zwischen zwei Paint-Ereignissen ZWEIMAL invertierst, hättest also das Original-Bild wieder.

INstalliere doch stattdessen einen Sysmessage-Hook, der die Paintereignisse abfängt, den Bildschirm invertiert und dann die Messages weiterleitet.

Nothine 3. Sep 2004 16:01

Re: auf jedes repaint was machen
 
Zitat:

Zitat von Dax
INstalliere doch stattdessen einen Sysmessage-Hook, der die Paintereignisse abfängt, den Bildschirm invertiert und dann die Messages weiterleitet.

und das würde wie funktionieren? :|

Dax 3. Sep 2004 16:03

Re: auf jedes repaint was machen
 
In der JVCL 3 gibt's eine Unit, die nur zu diesem Zweck entwickelt wurde.

glkgereon 3. Sep 2004 17:21

Re: auf jedes repaint was machen
 
Zitat:

INstalliere doch stattdessen einen Sysmessage-Hook, der die Paintereignisse abfängt, den Bildschirm invertiert und dann die Messages weiterleitet.
Zitat:

In der JVCL 3 gibt's eine Unit, die nur zu diesem Zweck entwickelt wurde.
Zu beiden: Was ist das?
Sysmessagehook???
JVCL 3???

kann mir das einer erklären?
am besten wohl dax...

Dax 3. Sep 2004 17:24

Re: auf jedes repaint was machen
 
Es gibt eine Komponente in JVCL namens TShellHook, und ein Beispiel ist auch dabei. Sieh dir's mal an und frag nach, wenn du noch mehr Info's brauchst.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:07 Uhr.

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