首页 > 后端开发 > C++ > 正文

c++怎么获取显示器屏幕分辨率_c++显示器分辨率获取方法

穿越時空
发布: 2025-10-11 16:16:01
原创
1009人浏览过
Windows下用GetSystemMetrics获取主显示器分辨率;2. 多显示器可用EnumDisplayMonitors结合GetMonitorInfo;3. 跨平台可选SDL2、GLFW或Qt库。

c++怎么获取显示器屏幕分辨率_c++显示器分辨率获取方法

在C++中获取显示器屏幕分辨率,主要依赖操作系统提供的API。Windows平台下最常用的方法是使用Win32 API中的GetSystemMetrics函数,简单高效。

使用GetSystemMetrics获取分辨率

该函数可以获取系统各类度量值,其中SM_CXSCREENSM_CYSCREEN分别代表屏幕的宽度和高度(像素单位)。

示例代码:

#include <iostream>
#include <windows.h>

int main() {
    int width = GetSystemMetrics(SM_CXSCREEN);
    int height = GetSystemMetrics(SM_CYSCREEN);

    std::cout << "屏幕分辨率: " << width << "x" << height << std::endl;
    return 0;
}
登录后复制

编译运行后即可输出当前主显示器的分辨率。

立即学习C++免费学习笔记(深入)”;

获取多显示器环境下的分辨率

如果系统连接了多个显示器,可以使用EnumDisplayMonitors配合GetMonitorInfo来逐个获取每个显示器的分辨率信息。

芦笋演示
芦笋演示

一键出成片的录屏演示软件,专为制作产品演示、教学课程和使用教程而设计。

芦笋演示 34
查看详情 芦笋演示

关键步骤:

  • 调用EnumDisplayMonitors枚举所有显示器
  • 回调函数中使用GetMonitorInfo获取每个显示器的矩形区域(rcMonitor
  • 从矩形数据中提取宽度和高度

这种方式适合需要精确控制多屏显示的应用场景。

跨平台考虑

上述方法仅适用于Windows系统。若项目需跨平台支持(如Linux或macOS),可借助第三方库:

  • SDL2:使用SDL_GetDesktopDisplayMode
  • GLFW:调用glfwGetVideoMode
  • Qt:通过QScreen::availableGeometry获取

这些库封装了不同系统的底层调用,便于统一处理。

基本上就这些。Windows下直接用GetSystemMetrics最快,复杂需求再考虑枚举显示器或多平台方案。不复杂但容易忽略头文件包含和链接设置。

以上就是c++++怎么获取显示器屏幕分辨率_c++显示器分辨率获取方法的详细内容,更多请关注php中文网其它相关文章!

c++速学教程(入门到精通)
c++速学教程(入门到精通)

c++怎么学习?c++怎么入门?c++在哪学?c++怎么学才快?不用担心,这里为大家提供了c++速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号