#author("2025-02-18T23:40:21+09:00","","")
[[SoftwareEngineering]]
#author("2025-02-18T23:41:27+09:00","","")
[[ソフトウェア開発>SoftwareEngineering]] / [[PowerShell>./]]

*PowerShell [#ub9f1fb3]
#contents

*GUI [#y4468667]
**Drag & Drop [#q83d1c52]
 # ------------------------------------------------------------------------------
 # ドラッグ&ドロップのサンプル
 # ------------------------------------------------------------------------------
 Add-Type -AssemblyName System.Drawing
 Add-Type -AssemblyName System.Windows.Forms
 
 
 # ----------------------------------------------------------
 # メイン画面
 # ----------------------------------------------------------
 $form = New-Object System.Windows.Forms.Form
 $form.Text = "Drag & Drop"
 $form.Size = New-Object System.Drawing.Size(640, 480)
 
 $form.AllowDrop = $true
 
 function IsTargetFile($filename) {
     if ([IO.Path]::GetExtension($filename) -eq ".txt") {
         return $true
     } else {
         return $false
     }
 }
 $form.Add_DragDrop({
     foreach ($filename in $_.Data.GetData([Windows.Forms.DataFormats]::FileDrop)) {
         if (IsTargetFile($filename)) {
             Write-Host $filename
         }
     }
 })
 $form.Add_DragOver({
     foreach ($filename in $_.Data.GetData([Windows.Forms.DataFormats]::FileDrop)) {
         if (IsTargetFile($filename)) {
             $_.Effect = [Windows.Forms.DragDropEffects]::All
         }
     }
 })
 
 
 # ----------------------------------------------------------
 # 実行ボタン
 # ----------------------------------------------------------
 $executeButton = New-Object System.Windows.Forms.Button
 $form.Controls.Add($executeButton)
 
 $executeButton.Location = New-Object System.Drawing.Point(520, 390)
 $executeButton.Size = New-Object System.Drawing.Size(80, 30)
 $executeButton.Text = "実行"
 $executeButton.Add_Click({
     Write-Host "実行ボタンクリック"
 })
 
 
 # ----------------------------------------------------------
 # 画面表示
 # ----------------------------------------------------------
 $form.ShowDialog()

トップ   差分 履歴 リロード   一覧 検索 最終更新   ヘルプ   最終更新のRSS