TFiremonkeyContainer 不会响应鼠标事件

问题描述 投票:0回答:1

我正在使用 Firemonkey 容器控件 (https://github.com/vintaggedave/firemonkey-container),因此我可以制作 VCL 应用程序,但有一些 FMX 元素。

我遇到了一个问题,但我无法让 TFireMonkeyContainer 控件响应鼠标事件(例如,MouseDown、MouseEnter、MouseMove、MouseUp 等)。

可能与消息被拦截的方式有关,但我不确定。

在我尝试发布的代码中:

鼠标按下时 鼠标输入 鼠标移动时 鼠标松开

但正如我所说,这些方法永远不会触发,奇怪的是 OnDragOver 和 OnDragDrop 可以工作(已包含在组件中)。

如何让 TFireMonkeyContainer 控件响应鼠标事件?

基本上我需要获取鼠标移动的 X 和 Y 坐标,当鼠标按下时我也需要 X 和 Y 坐标。

谢谢

delphi firemonkey vcl
1个回答
3
投票

你的设计有缺陷。

您不希望

TFireMonkeyContainer
响应任何鼠标事件。如果是这样,那么放置在
TFireMonkeyContainer
内的 FMX 控件将永远不会注册任何鼠标事件,因为它们已经由
TFireMonkeyContainer
处理。

您需要做的是在每个 FMX 控件上设置适当的事件。

© www.soinside.com 2019 - 2024. All rights reserved.