2

我在表单上有一个简单的 ListView,我想完全关闭热跟踪。HotTracking 属性设置为 False,但鼠标光标下的项目上仍然绘制了一个蓝色矩形...

德尔福 XE3,Windows 7

4

1 回答 1

5

该矩形是资源管理器主题的一部分。资源管理器主题是可选的,列表视图类选择使用它并CreateWnd通过调用将其强加于SetWindowTheme. SetWindowTheme您可以通过调用撤消更改来覆盖该行为。

使用插入器类的示例:

uses
  Vcl.ComCtrls, Winapi.UxTheme;

type
  TListView = class(Vcl.ComCtrls.TListView)
  protected
    procedure CreateWnd; override;
  end;

procedure TListView.CreateWnd;
begin
  inherited;
  SetWindowTheme(WindowHandle, nil, nil);
end;
于 2013-06-19T15:44:25.403 回答