![]() |
Bereichsüberprüfung AdjustWindowRect BorderStyle bsDialog
Hallo DPler,
ich wollte mit Hilfe einer Anleitung ( ![]() jedoch wenn ich die Eigenschaft BorderStyle des Fensters auf bsDialog stelle erhalte ich eine Bereichsüberprüfungsmeldung.
Delphi-Quellcode:
Das Problem ist das GetWindowLong() im Falle von bsDialog einen negativen Wert ausgibt die Prozedur AdjustWindowRect jedoch nur positive (Cardinal) Werte akzeptiert. :gruebel:
procedure TfrmMenue.FormCreate(Sender: TObject);
var R: TRect; begin if DwmCompositionEnabled then begin //init SetRectEmpty(R); AdjustWindowRect(R, GetWindowLong(Handle, GWL_STYLE), False); FWndFrameSize := R.Right; GlassFrame.Top := -R.Top; GlassFrame.Enabled := True; SetWindowPos(Handle, 0, Left, Top, Width, Height, SWP_FRAMECHANGED); DoubleBuffered := True; //Höhe und Position der Groupbox anpassen grbMenue.Top := GetSystemMetrics(SM_CYEDGE)+GetSystemMetrics(SM_CYCAPTION)+8; grbMenue.Height := ClientHeight - grbMenue.Top - GetSystemMetrics(SM_CYEDGE)-StatusBar1.Height; end;{if} end; Ich bin gerade etwas ratlos was ich tun muss das ich die Eigenschaft 'bsDialog' einstellen kann, ohne eine Fehlermeldung. |
AW: Bereichsüberprüfung AdjustWindowRect BorderStyle bsDialog
Probiere mal testhalber die Funktion GetWindowLongPtr.
|
AW: Bereichsüberprüfung AdjustWindowRect BorderStyle bsDialog
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:44 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