gpt4 book ai didi

c++ - libxrandr 库 : how to change properties of connected monitors?

转载 作者:行者123 更新时间:2023-11-30 04:20:36 25 4
gpt4 key购买 nike

我使用 C++/Qt 和 libxrandr 库编写了一个应用程序来更改显示器的分辨率和方向。但我必须扩展功能。请帮助我了解如何执行以下操作:

  1. 获取已连接显示器的列表
  2. 改变它们每个的分辨率和方向
  3. 将它们相对放置(例如,左侧第一个显示器,右侧第二个显示器)

最佳答案

问题解决了

XRROutputInfo *output_first_info = XRRGetOutputInfo(dpy, sr, sr->outputs[X]);
XRRSetCrtcConfig(dpy, sr, output_first_info->crtc, CurrentTime, XM, YM, sr->modes[M].id, R, &sr->outputs[X], 1);

其中 X - 要配置的监视器数量XM, YM - 虚拟屏幕中的坐标M - 模数

获取已连接显示器的模式列表:

int jj = 0;
       for (int i = 0; i < sr->noutput; i++)
       {
           XRROutputInfo *output_info = XRRGetOutputInfo (dpy, sr, sr->outputs[i]);
           XRRCrtcInfo *crtc_info = XRRGetCrtcInfo(dpy, sr, output_info->crtc);

           for (int j = jj; j < output_info->nmode; j++)
           {
               qDebug() << output_info->name << sr->modes[j].name << j;

               jj++;
           }
       }

关于c++ - libxrandr 库 : how to change properties of connected monitors?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15186089/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com