【问题标题】:How to resize a Windows Forms form to be smaller than 132x38? [closed]如何将 Windows 窗体的大小调整为小于 132x38? [关闭]
【发布时间】:2016-05-17 18:55:09
【问题描述】:

当我将无边框表单调整为较小的宽度和高度时,它不会小于 {Width=132, Height=38}。

如何让它变小?

【问题讨论】:

  • 你在问怎么做吗?
  • @Tim,我想将表单调整为宽度 = 50 和高度 = 38。但它本身调整为 Width=132 和 Height=38 不小于。
  • 对我来说似乎是一个真正的问题。您可以在 Load 事件中执行此操作。
  • 所以基本上 OP 想要一个可见但很小的窗口,用户无法访问。我真的必须知道。这有什么意义?
  • 这是一个合理的问题,只是表述得不太好。可以在这里找到答案:stackoverflow.com/a/994189/1019109.

标签: .net winforms


【解决方案1】:

更新答案

根据 cmets 部分中的讨论,您尝试执行的操作在 Windows 中可能是不允许的。我可以制作的最小窗口是仅显示图标和控件框的位置。要使其更小,您必须最小化窗口,这实际上会使其不可见(尽管仍然存在于任务栏上)。

老实说,我不确定将窗口制作得如此之小以至于您仍然可以看到它但无法访问应用程序图标或控制框会获得什么价值。

结束更新答案

检查窗体上的MaximumSize 和MinimumSize 属性。它们目前可能设置为 123、38。

您可以在属性窗格的设计器中设置它们,也可以通过编程方式设置它们:

Form1.MaximumSize = new Size(1000, 1000);
From1.MinimumSize = new Size(0, 0);

【讨论】:

  • 谢谢,但我正在等待解决方案。我需要将我的表单调整为任何值。当然,我确实设置了FormBorderStyle=None 以转换为小弹出窗口的形式,所以我需要一个解决我的问题的方法
  • @ahoo 祝你好运。我怀疑你会得到解决方案,但也许你会。
  • 对于它的价值,我需要一个解决完全相同的问题(以及合法的商业原因)的解决方案 - 设置表单的 TransparencyKey 属性为我解决了这个问题。如果由于某种原因这对您不起作用,请尝试将 MinimumSize Width 和 Height 设置为 1。我猜当 Form Repaints 时,它的 Width 和 Height 不能为 0,用于 Focus 目的。
  • 默认的最小尺寸是 0,0 但这似乎意味着 0,0 以外的东西(比如不低于标题栏,并且不小于按钮的总和)标题栏),因此必须将最小尺寸设置为 1,1 或类似的小值,但不能设置为 0,0。
猜你喜欢
  • 1970-01-01
  • 2014-10-10
  • 2013-04-30
  • 2011-12-19
  • 1970-01-01
  • 2013-08-01
  • 2019-04-30
  • 1970-01-01
  • 2019-01-09
相关资源
最近更新 更多