高手看过来….请教几个问题?
---------------------------------------------------------------------------------
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
………
---------------------------------------------------------------------------------
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
………
解决方案 »
- 文本编辑器:我想在打开一个.txt后进行编辑,编辑未保存部分用不同颜色显示,当保存后再还原到原来颜色,不知该怎么设置,请赐教
- DELPHI键盘失灵
- 求一个Ehlib 3.2 控件的安装方法?
- delphi中如何安装第三方控件?
- 封杀FS 民意调查
- 怎样解决delphi6下SOAP编程,客户端提取数据汉字显示乱码的问题?
- 请教:怎样把Word文件存入SQL server2000数据库中,在需要时可以取出重新编辑?
- 请问如何实现 textout() 的输出字串右对齐?
- 谁有南天bp-8902磁卡读写器的开发文档和范例程序?能不能给我一份?
- 急!急!急!请问如何将一个网页存下来
- 在BDE中建的连接删除不了
- 请教一个问题?---在线等待
方便看到自己提過的問題﹐怎么設?
2.没有看懂你的意思
3.packed的record是为了和API的结构兼容,在编译期没有采取内存布局优化。
4.=只有一个意思。表示相等啦 :P。
你的a的是定义在type域内,所以TWindowPlacement = tagWINDOWPLACEMENT表示声明一个记录类型TWindowPlacement,内部组织跟tagWINDOWPLACEMENT一样的。也可以说跟tagWINDOWPLACEMENT加一个别名TWindowPlacement
你的b则是用来判断Form2与nil是否相等的。
北京申请吗?
手续怎么办?
总费用多少?
能否拉到客户?
成功率多少?
........
1. var
frm_itemtca: Tfrm_itemtca;
那指的是frm_itemtca 囖2. GetWindowPlacement(FHandle, @WindowPlacement);
这里的’@WindowPlacement ‘前面有个 ‘@’ 是什么意思? 3. 在windows.pas 里,有个函数如下:
这是一个什么函数?
external user32 name是什么意思?
function GetWindowPlacement; external user32 name 'GetWindowPlacement';4.‘packed的record是为了和API的结构兼容,在编译期没有采取内存布局优。’
那packed 什么结构呢? 请举例说明(笨学生)
课外话题,
你的 红五角星 代表?
2.@表示取指针。@WindowPlacement就是WindowPlacement的指针
3. external user32 用在静态声明API的时候指定DLL文件名,name用来指定DLL导出的函数名。这里user32是一个常量,字符串类型,你可以在windows.pas文件中找到
4.你可以作个试验:
type a=record
field1:byte;
field2:integer;
end;
b=packed record
field1:byte;
field2:integer;
end;
在用sizeof来查看两个结构的大小就可以了。
p.s. 红星用来粗略表示专家分的多少,5000-10000就是1颗红星