在win32中显示并切换到一个窗口

本文关键字:窗口 一个 win32 显示 | 更新日期: 2023-09-27 18:05:22

我有一个子窗口,有时需要显示。在我的winform项目中,这个窗口可以以某种方式聚焦于用户。我试过mywindow.focus(),但它不起作用。所以我想使用win32 api来显示这个窗口。我听到了这样的话:

[DllImport("User32")]
 public static extern void SwitchToThisWindow(IntPtr hWnd, bool fAltTab);
     public static void ShowAndSwitchWindow(IntPtr MainWindowHandle)
     {
   ShowWindow(MainWindowHandle.ToInt32(), SW_MAXIMIZE);
   SwitchToThisWindow(MainWindowHandle, true);
      }

但我不能理解如何使用,在我的项目?????

我的窗口是这样的:(记住这不是主窗口。这个窗口是从另一个名为MainWindow的窗口中调用的

               show_meaning s = new show_meaning(x);
                s.Show();

我不习惯在win32 api。谁能帮我????

在win32中显示并切换到一个窗口

你应该调用SetForegroundWindow和ShowWindow()而不是只调用ShowWindow()。

[DllImport("User32")]
public static extern int SetForegroundWindow(IntPtr hwnd);