【问题标题】:Limiting Unity windows application's resolution限制 Unity Windows 应用程序的分辨率
【发布时间】:2019-12-04 05:24:36
【问题描述】:

我希望能帮我解决我的问题。我想限制我的 Windows 应用程序窗口,使其不会低于特定分辨率(例如不小于 400x200)。

我目前有检查当前窗口大小的逻辑,如果它超出某个比例,则将大小调整为目标比例。我可以重做这个逻辑,但它的问题是分辨率之间的窗口闪烁,而且有点恶心。

我想模仿类似于 Unity 编辑器或谷歌浏览器的东西。尝试调整窗口大小以使其不低于特定分辨率时存在限制。

以前有没有人做过类似的事情并且能够为我指明正确的方向?示例代码也将受到欢迎。

谢谢!

【问题讨论】:

    标签: windows unity3d screen-resolution


    【解决方案1】:

    最好的方法是从播放器设置中禁用分辨率对话框(我想它已经是)并取消选中可调整大小的窗口,以便在游戏开始时使用 Screen.SetResolution 传递 1 个分辨率并且该分辨率仍然存在未更改(或可通过游戏内设置进行编辑)。

    【讨论】:

    • 这是我已经在使用的,但如果分辨率更改为低于最小值,我会被抢购一空。我试图避免这种情况
    【解决方案2】:

    得到了答案。 Unity 将其最小分辨率硬编码为 128x128。所以为了改变它,你需要继承 Unity 的 WndProc 并覆盖 WM_GETMINMAXINFO 窗口消息:https://docs.microsoft.com/en-us/windows/win32/winmsg/about-window-procedures?redirectedfrom=MSDN#winproc_subclassing

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-11-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多