更改外部窗口的最小大小

本文关键字:小大 窗口 外部 | 更新日期: 2023-09-27 18:19:22

是否可以更改外部窗口的最小大小并重新调整它的大小。假设外部应用程序窗口的大小为(400,400),最小大小为(200,200),我们是否可以将其更改为(100,100)。我拿到了外窗的把手。

我尝试使用MoveWindow函数

 internal static extern bool MoveWindow(IntPtr hWnd, int X, int Y, int nWidth, int nHeight, bool bRepaint);

,但是在窗口达到最小大小后就不能这样做了。难道不能这样做吗?我愿意使用托管c#代码,如ui自动化或甚至windows api, pinvoke等。有什么建议吗?

更改外部窗口的最小大小

可能可以在目标窗口中子类化某个控件,并在控件本身接收消息之前拦截消息,从而使您有机会丢弃WM_SIZE消息(MSDN文章)。然而,这将花费大量的pinvoke和windows api的工作。

编辑:如果你不介意一些体力劳动,这可能会容易得多。