【问题标题】:changing screen resolution programmatically [duplicate]以编程方式更改屏幕分辨率[重复]
【发布时间】:2015-06-29 21:12:16
【问题描述】:

IDE:VS2010、c#.net 4.0、winforms

我的应用程序基于 1366x768 屏幕分辨率构建。我还有另一个三星液晶显示器,它的分辨率最高 -> 1920x1080,但在选项列表中(右键单击桌面->屏幕分辨率)它没有 1366x768 分辨率,那么有什么办法可以强制这个液晶显示器达到1366x768分辨率,这样我的应用程序就可以适应那个液晶显示器,操作系统是Windows 7

【问题讨论】:

  • 我不认为篡改用户分辨率是个好主意。如果应用程序不断改变我的分辨率,我个人不会很高兴。考虑到人们同时在屏幕上做很多事情,你会扭曲每隔一个窗口。不过你可以看看:stackoverflow.com/questions/215412/…

标签: c# .net winforms screen-resolution


【解决方案1】:

使用nircmd可以做很多事情

nircmd.exe setdisplay 1366 768 32

它也不是以编程方式,但您可以start a Process 并调用此实用程序。

强制用户更改分辨率不是一个好习惯。尝试使您的设计适应support different resolution

您也不能强制显示器将其分辨率更改为它不支持的分辨率。

【讨论】:

    【解决方案2】:

    正如Ferruccioanother question 中指出的那样:

    您可以使用EnumDisplayDevices 找出您显示的内容 有可用和EnumDisplaySettings 以获取可用列表 显示器的分辨率。使用ChangeDisplaySettings 设置 您需要的分辨率。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多