我正在尝试在用户触摸时更改TLabel
颜色,但看起来MouseDown
事件未被触发。
procedure TForm_Master.tv_1Down(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Single);
begin
tv_1.FontColor := TAlphaColors.Dodgerblue;
end;
可能出现什么问题?
答案 0 :(得分:5)
如果我们将HitTest
设置为True
,则此控件会捕获所有鼠标OnClick
和OnDblClick
事件。
如果我们将HitTest
设置为False
,则这两个鼠标单击事件将通过此控件,以便在此控件后面的控件接收鼠标事件而不是此控件。
对于大多数控件,HitTest
为True
默认。但是,对于TLabel
和TPathLabel
,情况并非如此,默认情况下HitTest
为False;除非您将OnClick
设置为OnDblClick
,否则这两个控件不会捕获HitTest
和True
个事件。
http://docwiki.embarcadero.com/Libraries/XE8/en/FMX.Controls.TControl.HitTest