![]() |
Auf Fenster zugreifen ohne Rahmen, Captionleiste usw.
Folgendes Problem:
Ich möchte auf den Inhalt eines anderen Fensters zugreifen. Über die API-Funktionen erhalte ich folgende Werte: GetWindowRect Top: 102 | Left: 417 | Right: 927 | Bottom: 704 GetWindowRgn hgCopy: 335810589 | GetClientRect Top: 0 | Left: 0 | Right: 502 | Bottom: 548 Dabei ist aber nicht klar, wo die Fläche beginnt, auf der gezeichnet wird. Also Fenster abzüglich Statusleiste, Captionleiste, Rahmen usw. Desweiteren möchte ich in diesem Fenster die Scrollbars ausschalten. Mit ShowScrollBar(hWin,SB_VERT, false); werden sie aber nur enabled. Hat jemand einen Tip? mfg Klaus-Peter :bounce1: |
Re: Auf Fenster zugreifen ohne Rahmen, Captionleiste usw.
Man nehme ...
ScreenToClient() und ClientToScreen(). Anhand des ersten Parameters wirst du schon feststellen, daß ein Referenzfenster übergeben werden muß (das ist das Fenster von welchem du oben die Rects geholt hast!). Mit der 2ten Funktion konvertierst du dann das Rechteck aus dem Aufruf von GetClientRect() in Screen-Koordinaten und voila kannst du top/left usw. vergleichen ;) ACHTUNG: GetWindowRect() ermittelt bereits die Screen-Koordinaten. Also nicht nochmals konvertieren!!! |
Re: Auf Fenster zugreifen ohne Rahmen, Captionleiste usw.
Danke Assa,
werde es, sobald mein Hexenschuss kuriert ist einmal ausprobieren. mfg lp :bounce1: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:06 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