gpt4 book ai didi

c# - 最大化/最小化其他应用程序

转载 作者:可可西里 更新时间:2023-11-01 10:34:08 27 4
gpt4 key购买 nike

我已经有一段时间没有做任何生疏的程序了。我正在研究代码以最大化和最小化其他应用程序。所以我找到了一些基本的东西,这就是我所拥有的,对原来的东西稍作修改。它希望我生成一些我所做的 FindWindow 方法。现在一切看起来都很好,我尝试运行它,收到一条消息。不知道从这里去哪里。我发现它的原始线程没有提到这一点。

enter image description here

private const int SW_SHOWNORMAL = 1;
private const int SW_SHOWMINIMIZED = 2;
private const int SW_SHOWMAXIMIZED = 3;

[DllImport("user32.dll")]
private static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow);
static void Main(string[] args)
{
// retrieve Notepad main window handle
IntPtr hWnd = FindWindow("Notepad", "Untitled - Notepad");
if (!hWnd.Equals(IntPtr.Zero))
{
// SW_SHOWMAXIMIZED to maximize the window
// SW_SHOWMINIMIZED to minimize the window
// SW_SHOWNORMAL to make the window be normal size
ShowWindowAsync(hWnd, SW_SHOWMAXIMIZED);
}
}

private static IntPtr FindWindow(string p, string p_2)
{
throw new NotImplementedException();
}

最佳答案

首先,使用您的方法 FindWindow(),当一个方法发生抛出时,您需要在调用它的方法中捕获它,在本例中为 Main().

现在NotImplementedException是一个类,这里​​贴一下继承层次

  1. 系统对象
  2. 系统异常
  3. 系统异常
  4. System.NotImplementedException

如报错,你只需要实现方法并删除de行:`throw new NotImplementedException();

最后我发布了一个实现选项,只需要窗口应用程序的标题。

public static IntPtr FindWindow(string titleName)
{
Process[] pros = Process.GetProcesses(".");
foreach (Process p in pros)
if (p.MainWindowTitle.ToUpper().Contains(titleName.ToUpper()))
return p.MainWindowHandle;
return new IntPtr();
}

顺便说一下,here又是一个关于Maximize/Minimize other applications的问题

关于c# - 最大化/最小化其他应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36788729/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com