我有Windows应用程序,我需要最大化窗口/窗体。
我试过
public const int WM_NCLBUTTONDOWN = 0xA1;
public const int HT_CAPTION = 0x2;
SendMessage(Handle, WM_NCLBUTTONDOWN, HT_CAPTION, 0);
and
int WM_SIZE = 0x0005;
int SIZE_MAXIMIZED = 2;
SendMessage(Main, WM_SIZE, SIZE_MAXIMIZED, 0);
没有什么不起作用。
可以告诉我什么是正确的wat吗?
答案 0 :(得分:2)
如文档中所述,WM_SIZE
是一个通知,在窗口大小发生变化时发送到窗口。将其发送到窗口不会改变窗口的大小。您的发送WM_NCLBUTTONDOWN
似乎是企图伪造标题栏中的点击。这是行不通的,至少不是你做的那样。
使用ShowWindowAsync
传递您希望最大化的窗口句柄,并SW_MAXIMIZE
。
答案 1 :(得分:0)
最大化是一个SYSCOMMAND,请改为尝试:
int WM_SYSCOMMAND = 0x112;
int SC_MAXIMIZE = 0xf030;
SendMessage(handle, WM_SYSCOMMAND, SC_MAXIMIZE, IntPtr.Zero);