6
我需要刪除一個按鈕焦點矩形,因爲在點擊按鈕後,它看起來不太符合TBitBtn
字形。如何從按鈕控件中刪除焦點矩形?
我需要刪除一個按鈕焦點矩形,因爲在點擊按鈕後,它看起來不太符合TBitBtn
字形。如何從按鈕控件中刪除焦點矩形?
作爲解決方法,您可以使用TSpeedButton
,它不佔用焦點,因此永遠不會收到焦點矩形。
可以爲TBitBtn
創建一個內插器類並覆蓋SetButtonStyle
防止它的內部IsFocused
變量設置:
type
TBitBtn = class(Buttons.TBitBtn)
protected
procedure SetButtonStyle(ADefault: Boolean); override;
end;
...
implementation
procedure TBitBtn.SetButtonStyle(ADefault: Boolean);
begin
inherited SetButtonStyle(False);
end;
這將導致沒有焦點矩形一個TBitBtn
。 (使用D7進行測試 - 帶/不帶主題支持)。
畢竟可以在OnClick中設置'Focused:= false;'? – shibormot 2013-03-09 23:19:37
或者使用speedbutton代替? – BeniBela 2013-03-09 23:20:35
兩個答案都很棒,非常感謝:) – 2013-03-09 23:56:22