gpt4 book ai didi

delphi - 我如何知道控件将停靠在哪里,以及如何防止停靠?

转载 作者:行者123 更新时间:2023-12-03 18:43:16 25 4
gpt4 key购买 nike

我正在使用Delphi的“常规”对接(DockSite = True和UseDockManager = True)。现在有几个DockSite控件和几个可停靠的表单。但是,并不是每个可停靠表单都应该在每个停靠站点中使用。

表单知道应该对接哪种控件;控件OTOH不知道接受或不接受哪种形式。

现在,我的问题是,发生了一些事件,您可以在其中取消拖放(或拖动/停靠)操作:DragOver,StartDock等。但是,所有这些都发生在“接收”侧,而不是在被删除的控件;那就是我想要的地方-这样停靠的表单可以拒绝停靠到某个控件。

是否有这样的事件,我是否忽略了某些事情,还是我不得不以其他方式来解决?

最佳答案

我认为我应该将此添加为答案,而不仅仅是评论。为自定义表单创建一个基本表单,并在其中添加逻辑。然后,每个控件将只需要知道如何与一个表单类进行交互。您制作的每个新停靠表单都必须从该基本表单继承。这样做的好处是您不需要制作控件的自定义版本,因为可以通过标准事件处理程序来处理所有内容。

关于delphi - 我如何知道控件将停靠在哪里,以及如何防止停靠?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7321597/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com