在linux / Gnome上获取多个屏幕的屏幕布局

时间:2012-02-09 10:15:29

标签: python linux bash screen multiple-monitors

我正在尝试为多个屏幕创建应用程序但是到目前为止我找不到找到辅助屏幕位置的方法(相对于主屏幕的x和y坐标)。

我更喜欢使用python或bash(通过库/框架很好)。我还检查了xorg.conf并且它没有反映我当前的屏幕设置。

我正在使用Ubuntu 11.10(我相信默认的Gnome 2),使用compiz作为窗口管理器。重复一下,我的问题是如何通过python或bash获取所有监视器的屏幕布局(相对于主屏幕的坐标)。

2 个答案:

答案 0 :(得分:3)

没关系,我用的是Pyqt。这是一些代码...

from PyQt4.QtGui import QApplication, QPixmap
desktop = QApplication.desktop()
screenRect = desktop.screenGeometry(1)   #2nd monitor
print screenRect.x(), screenRect.y()   #returns the x and y of that screen

答案 1 :(得分:1)

Python绑定解决方案

所以,从这里你可以下载python的xrandr绑定:https://launchpad.net/python-xrandr

# Import the module
from xrandr import xrandr

# Get a screen object to work with
screen = xrandr.get_current_screen()
 ett samband mellan hur mycket N sovit senaste dygnet och
# Get the active output objects as a list
active_outputs = [o for o in screen.get_outputs() if o.is_active()]

这就是我玩了一会儿。我希望它会让你开始:-)我现在只有一个屏幕连接......

解析数据解决方案

正如我在上面的评论中提到的另一个解决方案是解析命令xrandr的输出,看起来它应该非常简单,只需看一眼就可以了......