PowerShell GUI検索アプリに「ファイルアイコン&色分け表示」機能を追加!


検索結果がズラーっと並んでいると、どれがExcel?どれが画像?…と迷いがち。
そこで今回は、検索結果を見やすく・わかりやすく表示する工夫を実装します!


今回追加する機能

機能内容
ファイルアイコン表示拡張子に応じたアイコンを表示(例:Excel・PDF・画像)
ファイル種別による色分け行ごとに背景色を変えて、視覚的に識別しやすくする

ファイルアイコンの取得方法(Shell APIを活用)

Add-Type -AssemblyName System.Drawing

function Get-FileIcon ($filePath) {
    $shl = New-Object -ComObject Shell.Application
    $folder = $shl.Namespace((Split-Path $filePath))
    $item = $folder.ParseName((Split-Path $filePath -Leaf))
    $item.GetIcon
}

※ PowerShell で直接アイコンを扱うのはやや手間なので、System.Windows.Forms.ListViewView = "Details"View = "SmallIcon" を設定して、ImageList と組み合わせるのが一般的です。


色分けの実装例(ListViewの行背景を変更)

switch -Wildcard ($file.Extension) {
    "*.xlsx" { $item.BackColor = 'LightGreen' }
    "*.pdf"  { $item.BackColor = 'LightCoral' }
    "*.jpg"  { $item.BackColor = 'LightBlue' }
    "*.log"  { $item.BackColor = 'LightGray' }
    default  { $item.BackColor = 'White' }
}

$item は ListView に追加する行です。


効果(視認性アップ!)

  • 一目でファイルの種類が分かる
  • 複数ファイルを扱う場面でも見落とし・ミスを防止
  • 色分けにより、業務に応じた分類がスムーズ

ビジュアル例(※イメージ)

[📊] report.xlsx         → 緑背景(Excel)
[🧾] invoice.pdf         → 赤背景(PDF)
[🖼️] photo.jpg           → 青背景(画像)
[📄] system.log          → グレー背景(ログ)

※ 実際にはListViewにImageListでアイコンを割り当てます。


まとめ

ファイルアイコン表示や色分けは、小さな工夫で大きな効果を発揮する便利な見せ方です。
検索機能と組み合わせることで、「探す」→「見つける」までを一気にスムーズ化できます!


次回予告

次回は、**「複数フォルダを一括で指定」「フォルダリストの保存と呼び出し」**機能を追加し、よく使うパターンを効率よく再利用できるようにしていきます!


コメント

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