【发布时间】:2014-08-10 12:40:27
【问题描述】:
在白色全屏形式中,我将有来自同一来源的七帧。我想用鼠标移动它们并在退出时保存该位置,以便稍后在同一位置加载。如果我在delphi.about.com 中获得的代码中按住鼠标并移动它,我可以移动它
但是,如果我在该面板中单击 WinControl,我当然不会从面板中获得 OnMouseDown。
如何移动面板(或框架)来移动其中的任何控件,而无需对其拥有的每个组件进行编码?
【问题讨论】:
-
你没有。您必须检测每个单独子控件上的鼠标活动,然后根据需要操作父面板/框架。
-
最简单的方法是添加一个透明覆盖层并使用它来处理您的拖动。然后,您找出需要移动的控件并移动那个控件。
-
您可以禁用子控件。
-
draggable 标签通常用于 jQuery Draggable,而不是通用的“在某个可视控件库中拖动控件”,这就是为什么相关列表都与 Java 和 jQuery 相关(至少我'正在发布此评论)。如果您不确定某个标签是否适用,请不要使用它,发布您的问题,访问一些带有您不确定标签的问题,如果它确实适用,您可以编辑您的问题并添加它。请不要只抓取与您发布的内容模糊相关的任何内容。谢谢。
-
@Graymatter 这是一个开始的地方。我应该使用什么作为透明叠加层?
标签: delphi vcl delphi-xe6