4

我在 Windows 窗体中开发了一个 1024 *780 分辨率的屏幕,但有人说它不适合更高分辨率。有没有办法处理这个?

有没有办法让 Windows 窗体应用程序在所有分辨率下看起来都一样?

4

3 回答 3

5

我的建议不是在所有屏幕上“让它看起来都一样”,而是设计 GUI 以便更优雅地上下缩放。布局管理器、停靠和锚点是您在 Winforms 中的朋友。TableLayoutPanel 对于这类事情非常有用。分离器也有帮助...

最后,这是 WPF 着手解决的问题之一。WPF 广泛使用布局管理器。它感觉更像 Java 或 GTK,而不是 Winforms 甚至 VB(老式 VB)。

于 2010-01-15T06:28:54.793 回答
0

这就是让你说“必须有更好的方法”的事情。

有一次我的解决方案是声明一个与当前屏幕分辨率相关的全局 ScalingFactor 变量。然后,每个视觉元素的大小乘以该因子。

因此,如果我为分辨率 A 设计表单,并且分辨率 B 大 1.2 倍,则窗口 A 的宽度将为 * 1.2,字体为 fontSize * 1.2,文本框尺寸为尺寸 * 1.2。

不好玩。

可能有您可以购买的第 3 方工具并将执行此扩展。

在跑下这些道路之前要检查的另一件事是实际上是屏幕分辨率还是 dpi 设置导致它看起来很糟糕。通常更高的分辨率只会让它看起来更小,但非典型的 dpi,例如当用户选择“大字体”时会造成严重破坏。

于 2010-01-15T05:42:42.720 回答
0

您可以使用项目的锚属性,并将表单的 autoScaleMode 属性设置为“无”。

于 2014-08-08T02:01:23.397 回答