PowerShell GUI検索アプリに「ダブルクリックでファイルを開く」機能を追加しよう!


前回までの記事で、高度な条件指定付きのファイル検索GUIアプリを作成しました。今回はその続編として、「検索結果をダブルクリックするとファイルを開く」機能を加えます。


機能概要

  • 検索結果(ListBox)をダブルクリックでファイルを開ける
  • 拡張子に応じて、既定アプリケーションで自動的に開く
  • 開けない場合はエラーメッセージを表示して安心設計

コード追加部分(イベント設定)

以下のように、ListBoxにダブルクリックイベントを設定します:

$listBox.Add_DoubleClick({
    $selected = $listBox.SelectedItem
    if ($selected -and (Test-Path $selected)) {
        try {
            Start-Process $selected
        } catch {
            [System.Windows.Forms.MessageBox]::Show("ファイルを開けませんでした:`n$_")
        }
    }
})

このコードをListBox定義後に追加すれば、どの検索結果ファイルもダブルクリックで開けるようになります!


実行イメージ

  • .txt → メモ帳で開く
  • .xlsx → Excelで開く
  • .pdf → Adobe Readerなどで開く
  • 実行ファイル(.exe)も起動可能(必要なら制限を加えることも可)

応用:ファイルの種類に応じて処理を分けることも可能!

例えば、「画像は画像ビューアで」「テキストはPowerShellで開く」など、以下のような拡張も可能です。

switch -Regex ($selected) {
    "\.txt$"     { notepad $selected }
    "\.(jpg|png)" { Start-Process "mspaint.exe" -ArgumentList $selected }
    default      { Start-Process $selected }
}

まとめ

PowerShellでGUIアプリを作ると、クリック操作だけでファイルの一覧・検索・オープンが完結する便利なツールになります。
ダブルクリック機能を追加することで、ツールの直感的な使いやすさが一気にアップします。


次回予告

次回は、右クリックメニュー(コンテキストメニュー)を追加して、ファイルをコピー・削除・フォルダを開くといった機能を組み込んでみましょう!


コメント

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