當鼠標移動到TListView項目上方時,會出現藍色輪廓(請參見圖片)。我將如何刪除它?TListView - 當鼠標懸停在物品上時,不要繪製該藍色矩形。怎麼樣?
我知道的唯一方法就是手動完成所有項目的繪製......但也許有一個更簡單的方法?試圖HotTrack =假,不利於:(
當鼠標移動到TListView項目上方時,會出現藍色輪廓(請參見圖片)。我將如何刪除它?TListView - 當鼠標懸停在物品上時,不要繪製該藍色矩形。怎麼樣?
我知道的唯一方法就是手動完成所有項目的繪製......但也許有一個更簡單的方法?試圖HotTrack =假,不利於:(
這幅畫是由特殊的探險主題所做的事被添加到由TCustomListView.CreateWnd
到SetWindowTheme(Handle, 'explorer', nil)
呼叫控制。如果使用默認主題那麼您將無法獲得熱跟蹤您可以通過恢復瀏覽器窗口的主題,發生例如在中介類:。
type
TListView = class(ComCtrls.TListView)
protected
procedure CreateWnd; override;
end;
....
procedure TListView.CreateWnd;
begin
inherited;
SetWindowTheme(Handle, nil, nil);
end;
當然,你也將失去一切的探險主題增加。
據我所知,沒有任何通知消息允許你壓制資源管理器主題熱追蹤繪畫。
爲什麼你想違背平臺的標準做事方式?該藍色矩形對用戶來說是非常重要的提示。它告訴他如果他點擊那裏然後選擇什麼。 – 2013-03-01 09:11:14
我使用項目的自定義背景顏色,並將鼠標移動到項目上時,此背景消失。 – djsoft 2013-03-01 10:50:44
好吧,對你好,你保持它的功能只是以不同的方式實施它。 – 2013-03-01 10:53:58