加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

windows – 可以在屏幕大小/屏幕外调整窗口大小吗?

发布时间:2020-12-13 22:37:57 所属栏目:Windows 来源:网络整理
导读:我的目的是在Win32下以编程方式将窗口的大小/高度调整为大于物理屏幕的大小.我怎样才能做到这一点? 在我的系统上,似乎给定窗口的最大大小受我的屏幕大小的限制,无论是以编程方式还是通过拖动大小调整光标手动调整大小. 我已经尝试使用SetWindowPos()和MoveW
我的目的是在Win32下以编程方式将窗口的大小/高度调整为大于物理屏幕的大小.我怎样才能做到这一点?

在我的系统上,似乎给定窗口的最大大小受我的屏幕大小的限制,无论是以编程方式还是通过拖动大小调整光标手动调整大小.

我已经尝试使用SetWindowPos()和MoveWindow()编程,并且都限制了目标窗口的大小.奇怪的是我知道有些人没有这个’上限’,所以我想知道这是否可能是由于某些操作系统设置(注册表).有谁知道这件事?或者也许某种方法来解决它?

//编辑:新发展

我在Windows XP和Windows 7上进行测试.我使用的显卡是NVIDIA Quadro NVS 290(256MB)和Geforce 9800GT(1GB).经过进一步调查后,看起来Windows正在拦截消息并摆弄参数.例如,如果您调用SetWindowPos来创建目标2000×2000,它将只接收上限x / y的WM_SIZE.

解决方法

为WM_GETMINMAXINFO实现一个消息处理程序,以阻止Windows应用理智的默认行为:

case WM_GETMINMAXINFO: {
    DefWindowProc(hWnd,message,wParam,lParam);
    MINMAXINFO* pmmi = (MINMAXINFO*)lParam;
    pmmi->ptMaxTrackSize.x = 2000;
    pmmi->ptMaxTrackSize.y = 2000;
    return 0;
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读