启动应用程序,然后在关闭应用程序后恢复

发布于 2024-11-05 18:06:05 字数 176 浏览 1 评论 0原文

我有一个启动记事本的应用程序。我想要做的是最小化我的应用程序,然后启动 Notepad.exe。用户关闭记事本后,我希望我的应用程序自动最大化或恢复我的应用程序窗口。我怎样才能在 C# 中做到这一点?我正在研究挂钩 notepad.exe 进程并尝试检测记事本上的窗口关闭事件。不过,我似乎想得太多了。有没有一种简单的方法可以做到这一点?

I have an application that launches Notepad. What I want to do is minimize my application, then launch Notepad.exe. After the user closes notepad, I'd like my application to automatically maximize or restore my application window. How can I do this in C#? I'm looking into hooking into the notepad.exe process and trying to detect window close event on notepad. I seem to be way over thinking this though. Is there a simple way to do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

恍梦境° 2024-11-12 18:06:05

只需使用 Exited 事件即可恢复窗口。像这样:

    private void button1_Click(object sender, EventArgs e) {
        var prc = new System.Diagnostics.Process();
        prc.StartInfo.FileName = "notepad.exe";
        prc.EnableRaisingEvents = true;
        prc.SynchronizingObject = this;
        prc.Exited += delegate { 
            this.WindowState = FormWindowState.Normal;
            prc.Dispose();
        };
        prc.Start();
        this.WindowState = FormWindowState.Minimized;
    }

Just use the Exited event to restore your window. Like this:

    private void button1_Click(object sender, EventArgs e) {
        var prc = new System.Diagnostics.Process();
        prc.StartInfo.FileName = "notepad.exe";
        prc.EnableRaisingEvents = true;
        prc.SynchronizingObject = this;
        prc.Exited += delegate { 
            this.WindowState = FormWindowState.Normal;
            prc.Dispose();
        };
        prc.Start();
        this.WindowState = FormWindowState.Minimized;
    }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文