mariotomo Asked: 2019-05-13 13:42:28 +0800 CST2019-05-13 13:42:28 +0800 CST 2019-05-13 13:42:28 +0800 CST 如何在调整大小时知道窗口的几何形状? 772 那是上个世纪,我不记得我们在部门使用了什么,一些运行 XWindow 或 Motif 的基本 X 服务器,在调整窗口大小时,我们会看到窗口中心的一个小部件,告诉我们当前的值改变窗口的位置和大小。如今,我们如何做到这一点,尤其是 Gnome3。 我知道我可以在调整大小后使用 来做到这一点,但xwininfo我想动态地看到它。 或者有没有我可以调用的命令行工具,并设置目标窗口的窗口大小?类似的东西xkill,但不会杀死客户端,只需调整它的大小。 x11 window 1 个回答 Voted Best Answer ottomeister 2019-05-13T17:27:33+08:002019-05-13T17:27:33+08:00 该窗口几何信息通常由窗口管理器提供。一些应用程序仍然自行执行此操作,特别是一些终端应用程序在调整大小期间报告字符的宽度和高度——这对于此类程序来说比以像素报告更有用。 xfce4-terminal做这个。 我不知道以下命令在 Gnome 3 上的表现如何,而且我没有手头的 Gnome 3 来尝试它们,但它们可能会起作用。 在传统的 X 环境中,您可以使用它xev -id <window>来监视指定窗口上的 X 事件。这些事件包括ConfigureNotify报告窗口的位置、宽度和高度等事件。要仅显示有趣的几何变化事件,请使用xev -id <window> -event structure. 您必须使用类似的东西xwininfo来发现要提供给的窗口 IDxev 要从命令行调整窗口大小和/或移动窗口,请使用wmctrl. 采用 optarg 形式的-e选项,保留某些值表示“不更改”。要在保持其重力和位置不变的情况下更改窗口的宽度和高度,请指定. 选择目标窗口的最简单方法是使用该选项,但如果您碰巧事先知道窗口 ID,则可以将其提供给,通常带有一个附加标志,例如指定应将 ID 理解为数字ID。wmctrl<gravity>,<posx>,<posy>,<width>,<height>0,-1,-1,<width>,<height>wmctrl-r :SELECT:-r-i 显然man xev并且man wmctrl拥有所有血腥的细节。
该窗口几何信息通常由窗口管理器提供。一些应用程序仍然自行执行此操作,特别是一些终端应用程序在调整大小期间报告字符的宽度和高度——这对于此类程序来说比以像素报告更有用。
xfce4-terminal
做这个。我不知道以下命令在 Gnome 3 上的表现如何,而且我没有手头的 Gnome 3 来尝试它们,但它们可能会起作用。
在传统的 X 环境中,您可以使用它
xev -id <window>
来监视指定窗口上的 X 事件。这些事件包括ConfigureNotify
报告窗口的位置、宽度和高度等事件。要仅显示有趣的几何变化事件,请使用xev -id <window> -event structure
. 您必须使用类似的东西xwininfo
来发现要提供给的窗口 IDxev
要从命令行调整窗口大小和/或移动窗口,请使用
wmctrl
. 采用 optarg 形式的-e
选项,保留某些值表示“不更改”。要在保持其重力和位置不变的情况下更改窗口的宽度和高度,请指定. 选择目标窗口的最简单方法是使用该选项,但如果您碰巧事先知道窗口 ID,则可以将其提供给,通常带有一个附加标志,例如指定应将 ID 理解为数字ID。wmctrl
<gravity>,<posx>,<posy>,<width>,<height>
0,-1,-1,<width>,<height>
wmctrl
-r :SELECT:
-r
-i
显然
man xev
并且man wmctrl
拥有所有血腥的细节。