【问题标题】:Use Python to resize the active window to half the screen size in Linux?使用 Python 将活动窗口的大小调整为 Linux 中屏幕大小的一半?
【发布时间】:2011-12-08 01:14:06
【问题描述】:

这个问题是一个后续问题:Manipulate window size in linux via compiled code?

根据标题,我想将活动窗口的大小调整为屏幕大小的一半(在屏幕的左侧或右侧。我可以使用 bash 脚本执行此操作,如下所示(根据上一个问题的答案) :

#!/bin/bash

w_h=$(xrandr | awk '/\*/{sub(/[0-9\.\*\+]*$/, ""); sub("x", " "); $1=$1/2; print}')
w=${w_h% *} ; h=${w_h#* }

wmctrl -r :ACTIVE: -b remove,maximized_horz,maximized,vert
wmctrl -r :ACTIVE: -e 0,${w},0,${w},${h}

但是,这种方法在我的笔记本电脑上存在 0.25 秒的明显但不严重的延迟,我希望将其降低到 0.1 秒。如何在 python 中实现与上述 bash 脚本相同的效果?

【问题讨论】:

  • 只是一个更新,行:wmctrl -r :ACTIVE: -b remove,maximized_horz,maximized,vert 应该是:wmctrl -r :ACTIVE: -b remove,maximized_horz,maximized_vertmaximized,vert 应该是 maximized_vert

标签: python linux window-management


【解决方案1】:

你得到的延迟是由 xrandr 命令引起的,无论如何它都会很慢。您可以通过解析xdpyinfo | grep 'dimensions:' 的输出来减少此时间。在 python 中,您可以使用 subprocess.Popen 调用此命令。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-01
    • 2023-01-04
    • 1970-01-01
    • 2015-07-17
    • 2019-06-06
    • 1970-01-01
    相关资源
    最近更新 更多