【发布时间】:2014-07-12 20:31:43
【问题描述】:
我有一个为bsDialog 设置并启用biHelp 的VCL 表单(应用程序栏中的“?”图标)。该应用程序还使用自定义 VCL 样式(Aqua Light Slate)。
但是,当我单击“?”时,我无法显示WMNCLBUTTONDOWN Windows 消息。按钮。仅当应用程序的 VCL 样式更改回 Windows(默认)时才有效。
procedure TMainFrm.WMNCLButtonDown(var Msg: TWMNCLButtonDown);
begin
if Msg.HitTest = HTHELP then
begin
OutputDebugString('Help button down');
Msg.Result := 0;
end
else
inherited;
end;
procedure TMainFrm.WMNCLButtonUp(var Msg: TWMNCLButtonUp);
begin
if Msg.HitTest = HTHELP then
begin
OutputDebugString('Help button up');
Msg.Result := 0;
end
else
inherited;
end;
有没有办法让这些事件以自定义 VCL 样式触发?
【问题讨论】:
-
你也应该添加一个标签来给出 Delphi 版本,因为 VCL 样式自第一个版本以来已经发生了很大变化
标签: delphi vcl delphi-xe4 windows-messages