看MSDN,GetWindowRect的说明如下:
BOOL WINAPI GetWindowRect( _In_ HWND hWnd, _Out_ LPRECT lpRect ); 但是实际调用直接传递结构体,而不是指针:
procedure TWinControl.UpdateBounds; var ParentHandle: HWnd; Rect: TRect; WindowPlacement: TWindowPlacement; begin // 非最小化状态下,取得Win控件显示区域 if IsIconic(FHandle) then // API begin WindowPlacement.Length := SizeOf(WindowPlacement); GetWindowPlacement(FHandle, @WindowPlacement); // API Rect := WindowPlacement.rcNormalPosition; end else GetWindowRect(FHandle, Rect); // API,取得客户区,注意第二个参数是指针,但Delphi里直接使用 end;
时间: 2024-10-27 19:28:32