尺寸大于屏幕尺寸的屏幕截图

我有一个TForm对象,其高度大于我的屏幕所需的垂直分辨率。

出于某种原因,Windows不允许窗体的可见(客户端?)区域超过屏幕分辨率,因此垂直滚动条出现在我的表单上。

我将如何获得整个表单的TBitmap图像或屏幕截图(没有滚动条,所有表单组件都可见),以便表单的所有内容都可见?

0
额外 编辑
意见: 1
是的, GetFormImage 是我们目前使用的。
额外 作者 ardnew,
例如,创建一个 TForm 对象,放置大量垂直内容以使您的(启用)垂直滚动条自动出现。内容的总高度应超过垂直屏幕分辨率。调用 GetFormImage ,你会看到较低的内容被丢弃。
额外 作者 ardnew,
您是否尝试过 GetFormImage 方法 ? ;
额外 作者 RRUZ,

1 答案

首先,你必须确保表单没有滚动条。为此,您可以为FormConstrainedResize编写事件处理函数,并根据需要调整MaxWidth和MaxHeight。如果表单大小在设计期间受到限制,请将FormCreate事件中所需的宽度和高度设置为所需的值。

现在你可以使用GetFormImage获取屏幕截图。

0
额外