![]() |
WM_SYSCOMMAND: Probleme mit SC_SIZE
Hallo,
habe ein Formular mit BorderStyle := bsNone erstellt. Dieses möchte ich aber trotzdem resizeable machen. Hierfür habe ich leere Images an die Ränder geklebt, die einen Resize-Cursor haben. Im OnMouseDown-Event habe ich folg. Code: if Button = mbleft then begin ReleaseCapture; FormInstant.Perform(WM_SYSCOMMAND, $F008, 0); end; Jetzt gibt es aber folg. Problem: Das Fenster lässt sich nur rechts sowie unten vergrößern. Versuche ich es links und oben, passiert nichts. Interessanterweise kann ich links und oben allerdings das Fenster vergrößern, indem ich die Mouse nach rechts oder unten bewege. Allerdings wird das Fenster dann wieder rechts bzw. unten vergrößert, nicht links bzw. oben. Kann noch jemand folgen? :D Kurz gesagt: derzeit sind wohl nur zwei Richtungen möglich (nach rechts und nach unten). Ggf. muss ich SC_SIZE ($F008) auch anders aufrufen, um die korrekte Vergrößerung links und oben zu erhalten. Wenn ja: wie? ;-) Danke für alle Tipps! |
Re: WM_SYSCOMMAND: Probleme mit SC_SIZE
Problem gelöst! :D
Delphi-Quellcode:
WMSZ_BOTTOMRIGHT etc. durch die entsprechenden Richtungen ersetzen... Steht weder in der MSDN, noch hab ich sonst irgendwas dazu gefunden. Per Zufall nach inzwischen 45 Minuten googeln gefunden. :-/if Button = mbleft then begin ReleaseCapture; FormInstant.Perform(WM_SYSCOMMAND, SC_SIZE or WMSZ_BOTTOMRIGHT, 0); end; |
Re: WM_SYSCOMMAND: Probleme mit SC_SIZE
Hi,
schön, dass Du Dir selbst helfen konntest :thumb: Tust Du uns trotzdem 2 Gefallen? 1. Setze bitte Delphi-Tags (Beitrag editieren, Quellcode markieren und auf den "Delphi-Code"-Button klicken) 2. Ersetze bitte die Zeile
Delphi-Quellcode:
durch
SC_SIZE + WMSZ_BOTTOMRIGHT
Delphi-Quellcode:
Bei Bitverknüpfungen mit + wird mir immer ganz übel ;)
SC_SIZE or WMSZ_BOTTOMRIGHT
|
Re: WM_SYSCOMMAND: Probleme mit SC_SIZE
Hehe sorry, hatte vorher noch mit SC_SIZE + 1 etc. rumgespielt und jetzt gar nicht bemerkt, dass das + noch nicht durch or ersetzt wurde. Danke für den Hinweis!
Tags sind jetzt auch dran. :-) |
Re: WM_SYSCOMMAND: Probleme mit SC_SIZE
Zitat:
das wäre wohl auch ohne angeklebte Images gegangen: ![]() |
Re: WM_SYSCOMMAND: Probleme mit SC_SIZE
Hallo,
nein, unter Vista gab's zumindest bei mir IMMER den Fensterrahmen. Darum die manuelle Implementation. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:03 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