Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Repaint auf anderem Fenster (https://www.delphipraxis.net/23881-repaint-auf-anderem-fenster.html)

mischer 11. Jun 2004 10:27


Repaint auf anderem Fenster
 
Hi Freaks,

kann mir jemand von euch sagen, wie ich auf einem anderen Fenster ein Repaint auslösen kann?

Ich habs damit versucht:
Code:
procedure RefreshDesktop;
var
   Desktop : TCanvas;
begin
   Desktop := TCanvas.Create;
   try
      Desktop.Handle := FSHandle; // FSHandle = Handle des zu aktualsierenden Fensters
      Desktop.Refresh;
   finally
      Desktop.Free;
   end;
end;
Das ist ihm allerdings vollkommen Suppe.

Ich hab nämlich das Problem, das beim ziehen meines Fensters über ein Accessfenster teilweise die Ränder stehenbleiben, was sehr unschön aussieht. (Das Problem tritt speziell auf langsamen Rechnern auf und hat nichts direkt mit meinem Programm zu tun. Wenn ich Notepad oder Paint drüberziehe passiert es auch.)
Deshalb möchte ich beim loslassen meines Fensters das Accessfenster neu zeichnen lassen.

Danke im Voraus für Eure Hilfe!

MfG mischer

Motzi 11. Jun 2004 10:43

Re: Repaint auf anderem Fenster
 
Ich mach das so:
Delphi-Quellcode:
procedure RepaintWnd(Window: hWnd);
begin
  InvalidateRect(Window, nil, True);
  UpdateWindow(Window);
  RedrawWindow(Window, nil, 0, RDW_FRAME or RDW_INVALIDATE or RDW_UPDATENOW or RDW_ALLCHILDREN);
end;

mischer 11. Jun 2004 10:52

Re: Repaint auf anderem Fenster
 
:dp: DANKE! Funktioniert einwandfrei :dancer: :cheers:

MfG mischer

vlees91 11. Jun 2004 11:51

Re: Repaint auf anderem Fenster
 
auch wenn das ein bisschen zu spät ist:(deinFormName ist der Formname des Forms, das gerepainted werden soll
Code:
deinFormName.Repaint;
Müsste eigentlich funtionieren.

Oder wolltest du ein Form, das nicht zu deinem Projekt gehört, repainten?

mischer 11. Jun 2004 11:54

Re: Repaint auf anderem Fenster
 
Zitat:

Zitat von vlees91
Oder wolltest du ein Form, das nicht zu deinem Projekt gehört, repainten?

Exakt! :-D Aber trotzdem vielen Dank für deine Mühe

MfG mischer


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