![]() |
LockWindowUpdate(0): Wie anschließendes WM_Paint verhindern.
Hallo,
nach einem LockWindowUpdate(RichEdit1.Handle)/LockWindowUpdate(0) möchte ich eine durch letzteres event. verursachte WM_Paint-Message ganz ausfallen lassen (...weil ich nämlich ein anschließendes Update selbst in die Hand nehmen oder eben ganz ausfallen lassen will). Dh.: ich möchte verhindern dass eine solche Message überhaupt verursacht wird, bzw. wenn das nicht möglich ist, dann möchte ich sie wenigstens gleich irgendwie abfangen können. Gibt's da event. irgendein Verfahren für? Angenommen z.B. durchs LockWindowUpdate(0) wäre jetzt eine WM_Paint-Message ausgelöst worden. Könnte man die dann sofort eine Code-Zeile darunter mittels PeekMessage feststellen und sie dann ggf. mittels BeginPaint u. EndPaint unschädlich machen? Thx im Voraus |
Re: LockWindowUpdate(0): Wie anschließendes WM_Paint verhind
Ueberschreibe die Paint-Methode und ignoriere die Message dort.
Eine private Variable zum signalisieren ist alles was du brauchst. |
Re: LockWindowUpdate(0): Wie anschließendes WM_Paint verhind
hmm... ich bin mir nicht ganz sicher, aber vielleicht könnte das hier funktionieren:
um das re-painting zu verhindern könnte man
Delphi-Quellcode:
verwenden, wobei wnd das Handle des jeweiligen Fensters repräsentiert.
SendMessage(wnd, WM_SETREDRAW, WPARAM(FALSE), 0)
Wenn man wieder painten will, ruft man die selbe message auf, aber diesmal mit TRUE als drittem Parameter. |
Re: LockWindowUpdate(0): Wie anschließendes WM_Paint verhind
Klappt beides perfekt! Thx.
( ...beim RichEdit-Control ist's dann übrigens die PaintHandler-Methode. ...und das WM_SETREDRAW scheint tatsächlich ganz ähnlich dem LockWindowUpdate zu sein, nur ohne anschließende (event.) WM_PAINT-Message hinterher ...ich die nachher also auch nicht kompensieren brauche. ) COOL ! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:57 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