Windows 7 Windows 7,如何告诉另一个窗口;snap";最大垂直尺寸?在elisp中如何做到这一点?

Windows 7 Windows 7,如何告诉另一个窗口;snap";最大垂直尺寸?在elisp中如何做到这一点?,windows-7,emacs,elisp,Windows 7,Emacs,Elisp,我最近在emacs elisp中发现了如何在Windows上最大化emacs帧: 我更愿意做的是使用Windows7的“捕捉”功能将我的emacs窗口“捕捉”到它的最大垂直大小 是否有类似的windows消息可以发送到任何窗口,或我的emacs窗口,使其捕捉到最大垂直大小 (首先,我可以用谷歌搜索上面的61488是0xF300,对应于WM_SYSCOMMAND SC_MAXIMIZE,它是窗口系统菜单中的一个条目,而“snap to vertical”不在该菜单中,因此我认为它不会通过WM_SY

我最近在emacs elisp中发现了如何在Windows上最大化emacs帧:

我更愿意做的是使用Windows7的“捕捉”功能将我的emacs窗口“捕捉”到它的最大垂直大小

是否有类似的windows消息可以发送到任何窗口,或我的emacs窗口,使其捕捉到最大垂直大小

(首先,我可以用谷歌搜索上面的61488是0xF300,对应于WM_SYSCOMMAND SC_MAXIMIZE,它是窗口系统菜单中的一个条目,而“snap to vertical”不在该菜单中,因此我认为它不会通过WM_SYSCOMMAND消息发生……)

根据,您需要执行:

PostMessage(hwndTarget, WM_NCLBUTTONDBLCLK, HTTOP, 0);

我看了一下,但看起来emacs没有与w32 send mesage相当的
。如果你找到了一个,
WM\nclubuttondblck
是163,
HTTOP
是12。

不确定你在问什么。你提到了Emacs框架和Emacs窗口,但我还是有一种印象,也许你真的想最大化框架,但只是在垂直方向上。是这样吗


如果是,请参见中的命令
垂直最大化帧。还有命令
水平最大化帧
最大化帧
,以及在最大化帧之前将帧恢复到其大小(垂直、水平或两者)的命令。

这非常有用,可能就足够了。这和我想要的略有不同,不过,嘿,我要了,谢谢。“窗口捕捉”有一个非常好的特性,我有两个不同的垂直高度的监视器,当捕捉到的窗口从一个监视器移动到另一个监视器时,它将重新调整其高度,以最大限度地适应每个窗口。
(defun w32-snap-max-vertical-frame ()
  "Maximize the vertical size of the current frame"
  (interactive)
  ; insert magic here
  )
PostMessage(hwndTarget, WM_NCLBUTTONDBLCLK, HTTOP, 0);