高手看过来,有散!
S海鸥 2003-08-08 11:10:53 高手看过来….请教几个问题?
---------------------------------------------------------------------------------
procedure Tfrm_itemtca.Resize(Sender: TObject);
begin
with Owner as TForm do
Self.SetBounds(0, 0, ClientWidth,
ClientHeight);
end;
---------------------------------------------------------------------------------
1. 此处的 Self 指的是 对象 Tfrm_itemtca?
---------------------------------------------------------------------------------
Control.pas
procedure TWinControl.SetBounds(ALeft, ATop, AWidth, AHeight: Integer);
var
WindowPlacement: TWindowPlacement;
begin
if (ALeft <> FLeft) then
begin
if HandleAllocated then
SetWindowPos(FHandle, 0, ALeft, ATop, AWidth, AHeight,
SWP_NOZORDER + SWP_NOACTIVATE)
else
begin
…
begin
GetWindowPlacement(FHandle, @WindowPlacement);
WindowPlacement.rcNormalPosition := BoundsRect;
end;
end;
end;
end;
function GetWindowPlacement; external user32 name 'GetWindowPlacement';
--------------------------------------------------------------------------
2.GetWindowPlacement(FHandle, @WindowPlacement);
这里的’@WindowPlacement ‘?, 跟踪进去
在windows 里发现如下,
function GetWindowPlacement; external user32 name 'GetWindowPlacement';
再也找不到…, 也不明白上面是什么意思?
---------------------------------------------------------------------------------
Windows.pas
TWindowPlacement = tagWINDOWPLACEMENT;
tagWINDOWPLACEMENT = packed record
length: UINT;
flags: UINT;
showCmd: UINT;
ptMinPosition: TPoint;
ptMaxPosition: TPoint;
rcNormalPosition: TRect;
--------------------------------------------------------------------------
3. tagWINDOWPLACEMENT = packed record 这种定义怎样理解?
4. 关于 ‘ = ‘ 有几中意思? 如
a . TWindowPlacement = tagWINDOWPLACEMENT;
b. if Form2 = nil then
………