迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 >

在 PowerShell 中显示消息框

作者:迹忆客 最近更新:2024/03/03 浏览次数:

有些人认为 PowerShell 是一种命令行语言。他们认为 PowerShell 可以将文本输出到沉闷的控制台屏幕。

但是,Windows PowerShell 构建在 .NET 框架之上。因此,它可以为你的脚本使用图形用户界面 (GUI)。

本文将讨论名为 Message Boxes 的 PowerShell GUI 的重要功能,我们将学习如何使用 PowerShell 编写和输出它们。


PowerShell GUI 简介

有几种方法可以将我们的脚本转换为 GUI 形式。如果我们需要创建简单的 GUI 工具以在 Windows PowerShell 中与用户交互,我们可能会选择 Windows 窗体 (WinForms) 或 Windows Presentation Foundation (WPF)。

但是,有时我们不需要构建功能齐全的 GUI 工具。

例如,当我们只想向用户显示一条消息以获取一般信息或获得一些简单的输入时,我们不想弄清楚如何制作表单并在表单上放置控件。

在这种情况下,还有另一种更直接的方法,只需要一行代码; [System.Windows.MessageBox]


PowerShell 中的 MessageBox

System.Windows 命名空间中的 MessageBox 类有许多选项,允许我们向用户显示一些带有 OK 按钮的文本以要求输入,并为他们提供诸如 YesNoCancel

首先,默认情况下,Windows PowerShell 中不存在此命名空间。因此,要使用它,我们需要将程序集添加到我们的 Windows PowerShell 会话中。

我们将通过使用 Add-Type cmdlet 添加 PresentationFramework 程序集来完成此操作。

Add-Type -AssemblyName PresentationFramework

添加后,我们现在可以使用 MessageBox 类。

MessageBox 类有一个名为 Show 的主要方法。这个方法允许我们传递不同的参数给它以不同的行为。

例如,你可以使用 Show() 方法以最简单的形式显示简单的消息。

[System.Windows.MessageBox]::Show('Hello')

当消息框出现时,我们会注意到它会停止你的控制台输入,直到它关闭。当我们点击 OK 时,控制台将显示 Show() 方法返回的内容,在这种情况下,它是简单的'OK'

Show() 方法有许多构造函数来自定义消息框标题、显示按钮的类型等。让我们来看一个示例。

首先,我们将添加一个标题和图标,我们将添加取消按钮来获取用户的输入。

我们将向 Show() 方法添加一些参数。

[System.Windows.MessageBox]::Show('Do you want to proceed?', 'Confirm', 'YesNoCancel','Error')

我们可以看到,只要将要显示的消息、消息框的标题、按钮组和要显示的图标类型按照正确的参数顺序放置,就可以提供不同类型的消息框。

然后,根据我们按下的按钮,它将返回一个单独的输出,然后我们可以使用它来决定脚本的未来流程。

$msgBoxInput =  [System.Windows.MessageBox]::Show('Would you like to proceed?', 'Confirmation', 'YesNoCancel','Error')

switch  ($msgBoxInput) {

    'Yes' {
    	## Action Here
    }
    'No' {
    	## Action Here
    }
    'Cancel' {
    	## Action Here
    }

}

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 Windows PowerShell 中获取命令行参数

发布时间:2024/03/04 浏览次数:358 分类:编程语言

本文将解释我们如何使用 PowerShell 的参数函数处理命令行参数,参数如何工作,我们如何使用 PowerShell 参数将值传递给参数,以及定义参数的基本方法是什么。

Windows PowerShell 中的 Base64 编码

发布时间:2024/03/04 浏览次数:332 分类:编程语言

本文将展示如何编码和解码 base64 字符串。Windows PowerShell 当前版本没有本机命令,因此我们将向你展示如何执行此操作的替代方法。

在 Windows PowerShell 中写入输出

发布时间:2024/03/04 浏览次数:259 分类:编程语言

本文将向你展示如何在 Windows PowerShell 中编写或打印输出。本文还将区分多个 write cmdlet 并解释它们的意义。

在 PowerShell 中注释代码

发布时间:2024/03/04 浏览次数:363 分类:编程语言

本文将展示在 Windows PowerShell 中注释代码的多种方法。本文还介绍了注释代码时的一些最佳实践。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便