GetTitleBarInfo函数不返回值

Sal*_*dor 1 delphi winapi

我正在GetTitleBarInfo以这种方式使用该功能

procedure TForm1.Button1Click(Sender: TObject);
var
  TitleInfo       : TTitleBarInfo;
begin
  ZeroMemory(@TitleInfo, SizeOf(TitleInfo));
  GetTitleBarInfo(Handle, TitleInfo);
  ShowMessage(IntToStr(TitleInfo.rcTitleBar.Left));
end;
Run Code Online (Sandbox Code Playgroud)

但是没有GetTitleBarInfo返回值(所有值都为零),我缺少什么?

RRU*_*RUZ 10

GetTitleBarInfo函数的文档说明在调用此函数之前必须将cbSize成员设置为sizeof(TTitleBarInfo),还必须检查函数返回的布尔结果.

procedure TForm1.Button1Click(Sender: TObject);
var
  TitleInfo       : TTitleBarInfo;
begin
  ZeroMemory(@TitleInfo, SizeOf(TitleInfo));
  TitleInfo.cbSize:=SizeOf(TitleInfo);
  if GetTitleBarInfo(Handle, TitleInfo) then
   ShowMessage(IntToStr(TitleInfo.rcTitleBar.Left));
end;
Run Code Online (Sandbox Code Playgroud)

  • 如果你一直在检查`GetTitleBarInfo()`的返回值,你本来可以捕获的,因为它本来会返回`FALSE`. (4认同)