您可以使用XLibs函数来获取显示的大小.
例如,对于默认显示:
#include <X11/Xlib.h>
Display* d = XOpenDisplay(NULL);
Screen* s = DefaultScreenOfDisplay(d);
Run Code Online (Sandbox Code Playgroud)
XOpenDisplay(NULL)获取X服务器的主显示(假设你有一个只有一个显示器的基本X配置......)
然后获取您想要分辨率的屏幕.对于主屏幕,请使用DefaultScreenOfDisplay,否则使用:ScreenOfDisplay(display,screen_nb).
然后你得到你的Screen*结构.
您可以访问高度和宽度成员以获得分辨率!
S->高度;
S->宽度;
这比使用WidthOfScreen/HeightOfScreen更好,因为它只需要一个请求来填充Screen结构.如果您已经在程序中使用Xlib并且可以选择屏幕(如果是多个屏幕),那么您可能已经拥有它.
您可以使用ScreenCount(显示)功能获取显示器上运行的屏幕数
| 归档时间: |
|
| 查看次数: |
5026 次 |
| 最近记录: |