パワーシェルでGUIを作ってみよう【フォーム画面で操作できるスクリプト入門】


PowerShellはコマンドラインだけでなく、ちょっとしたGUI(フォーム画面)を作ることも可能です。「非エンジニアにも使いやすいツールを作りたい」と思ったときにとても便利です。

今回は、ボタン付きの簡単なウィンドウを作成する方法を紹介します。


GUI作成には「Windows Forms」を使う

PowerShellでは、.NET Frameworkの機能を利用することで、Windowsアプリのような**ウィンドウ付きの画面(フォーム)**を表示できます。

まず、以下のようにして必要なアセンブリを読み込みます:

Add-Type -AssemblyName System.Windows.Forms

基本のGUIフォーム作成スクリプト

例:ボタンをクリックしてメッセージを表示する

Add-Type -AssemblyName System.Windows.Forms

# フォーム作成
$form = New-Object System.Windows.Forms.Form
$form.Text = "PowerShell GUIサンプル"
$form.Size = New-Object System.Drawing.Size(300,200)

# ボタン作成
$button = New-Object System.Windows.Forms.Button
$button.Text = "クリック!"
$button.Location = New-Object System.Drawing.Point(100,60)
$button.Size = New-Object System.Drawing.Size(100,30)

# ボタンクリック時の動作
$button.Add_Click({
    [System.Windows.Forms.MessageBox]::Show("こんにちは!PowerShellです")
})

# フォームにボタンを追加
$form.Controls.Add($button)

# フォーム表示
$form.ShowDialog()

このスクリプトを実行すると、「クリック!」というボタンがあるウィンドウが表示されます。ボタンを押すと、メッセージボックスがポップアップします。


入力ボックス付きのフォーム例

Add-Type -AssemblyName System.Windows.Forms

$form = New-Object System.Windows.Forms.Form
$form.Text = "名前入力"
$form.Size = New-Object System.Drawing.Size(300,200)

$label = New-Object System.Windows.Forms.Label
$label.Text = "名前を入力してください:"
$label.Location = New-Object System.Drawing.Point(20,20)
$label.Size = New-Object System.Drawing.Size(250,20)

$textBox = New-Object System.Windows.Forms.TextBox
$textBox.Location = New-Object System.Drawing.Point(20,50)
$textBox.Size = New-Object System.Drawing.Size(240,20)

$button = New-Object System.Windows.Forms.Button
$button.Text = "表示"
$button.Location = New-Object System.Drawing.Point(100,100)

$button.Add_Click({
    [System.Windows.Forms.MessageBox]::Show("こんにちは、" + $textBox.Text + " さん!")
})

$form.Controls.Add($label)
$form.Controls.Add($textBox)
$form.Controls.Add($button)

$form.ShowDialog()

この例では、名前を入力してボタンを押すと、あいさつが表示されるGUIツールになります。


GUIスクリプトの活用例

  • ファイル選択や出力先を指定するツール
  • 簡易的なランチャー(定型処理の自動実行)
  • 入力値に応じて処理を変える簡単な業務アプリ

まとめ

PowerShellでGUIを作ることで、コマンドに不慣れなユーザーにも優しいツールを作成できます。Windows Formsを使えば、複雑なプログラミングをしなくても、実用的なミニアプリを作れるのが魅力です。

次回は、フォルダ内のファイルをGUIで操作する簡易アプリの作り方を紹介予定です!


コメント

タイトルとURLをコピーしました