我目前正在开发一个跨多个屏幕的多窗口应用程序。该软件使用xlib编写,可在ubuntu 10.10,gnome桌面上运行。 要获取每个窗口的位置,我想访问/etc/X11/xorg.conf文件,特别是SeverLayout部分。它看起来像这样:
Section "ServerLayout"
Identifier "aticonfig Layout"
Screen "screen0" 0 0
Screen "screen1" 1920 0
Screen "screen2" 3840 0
Screen "screen3" 5760 0
EndSection
我想获取每个屏幕的X值(0,1920,...)xlib是否以某种方式提供对此信息的访问?
感谢
答案 0 :(得分:0)
您可以使用XWidthOfScreen和XHeightOfScreen功能。
使用XScreenCount(获取屏幕数量)和XScreenOfDisplay以获得适当的屏幕结构。
更好的方法是获取屏幕的根窗口并使用XParseGeometry函数解析它的几何。
答案 1 :(得分:0)
有关X中多个监视器布局的信息,特别是当它们合并到一个逻辑屏幕时,可以通过libXrandr和libXinerama API获得。遗憾的是,1.2版本中添加到libXrandr的多屏幕API未在手册页中介绍,但需要查看extension spec和Xrandr.h header file。