我有一个应用程序,我想控制外部窗口的行为。我正在尝试通过调用:
来设置此窗口大小和位置[DllImport("user32.dll")]
[return: MarshalAs(UnmanagedType.Bool)]
static extern bool MoveWindow(IntPtr hWnd, int X, int Y, int nWidth, int nHeight, bool bRepaint);
private void DoOnControlSize(IntPtr wind)
{
if (wind != IntPtr.Zero)
{
MoveWindow(wind, 0, 0, 620, 480, true);
}
}
找到窗口句柄并且MoveWindow
有效,但只有在单击此外部窗口并再次调用该方法后才会更改大小和位置。
这个受控制的窗口是无边框的,没有风格。
有没有办法模仿代码点击?
我尝试过WinAPI SetFocus
,SetForegroundWindow
和SetActiveWindow
方法,但没有任何效果。