delphi ShowWindow()将宽度设置为全屏宽度

slwdgvem  于 2023-03-08  发布在  其他
关注(0)|答案(1)|浏览(159)

我有一个子窗体,它是从一个较大窗体ManualDock 'd到面板上的。
问题是当调用ChildForm.Show()时,user32.dll中的ShowWindow()函数将ChildForm的宽度设置为1920。我如何防止这种行为?即使这是文档中的默认Windows行为, Delphi 为什么不根据属性的规范调整窗体的大小?
这种行为发生在对接之前。停靠时窗体看起来像是采用了它停靠的父窗体的宽度(这里是一个简单的面板),但这意味着我不能依赖于窗体的宽度总是正确的。

ct2axkht

ct2axkht1#

要限制可停靠窗体的大小,请使用其Constraints属性:

  • Constraints.MaxHeight
  • Constraints.MaxWidth
  • Constraints.MinHeight
  • Constraints.MinWidth

设置这些参数后,您可以依赖于指定的窗体大小。

相关问题