可以使用TSizeGrip在运行时移动和调整组件的大小(在FireMonkey中)



FireMonkey的前身宣传说它可以用来创建CAD和GIS程序。我一直在探索FireMonkey,并思考如何创建一个简单的CAD程序。一个基本功能是使用鼠标在屏幕上移动形状。FireMonkey包含一个TSizeGrip组件,我怀疑它可能适用于移动形状,并在形状的角落和边缘提供节点供用户点击。但是,TSizeGrip的文档还没有完成。

可以使用TSizeGrip来允许最终用户移动FireMonkey形状吗?如果有,怎么做?

No.

TSizeGrip是专门为调整窗体而提供的,而不是任意的FireMonkey控件或容器。

你可以很容易地通过创建一个新的FireMonkey HD应用程序看到这一点。在表单上放一个TPanel,然后在面板上放一个TSizeGrip

运行应用程序,你会发现,当你把鼠标放在上面,点击大小手柄并拖动时,窗体的大小被调整,而不是面板的大小。尺寸控制通常锚定在窗体的右下方。

如果你想知道为什么你需要这样一个明显有限的使用控件,当可调整大小的窗体可以使用他们的边界调整大小,答案是,它有时可能是有用的,有一个窗体可调整大小,而没有完整的可拖动的边界样式。例如:模态对话框

没有-只有一个例外。

如果你创建一个新的组件,你使用TPanelTSizeGrip - TSizeGrip将控制TPanel的大小,而不是TForm的大小。

如果你把TPanel和TSizeGrip放在一个表单上TSizeGrip控制表单的大小,而不是面板的大小我刚试过了

最新更新