写一个powershell的简单GUI做本地任务,试验出2个方法:
方法1:
function btn1_click {write-host $text1.Text -ForegroundColor Green -BackgroundColor Black
}$btn1.Add_Click({btn1_click})
方法2:
$btn2_click = {write-host $text2.Text -ForegroundColor Cyan -BackgroundColor Black
}$btn2.Add_Click($btn2_click)
完整代码:
$form = New-Object System.Windows.Forms.Form
$form.Text = 'DIY task' #文本,即窗体标题
$form.Size = New-Object System.Drawing.Size(600, 300) #窗体大小,长为600,宽为300
$form.StartPosition = 'CenterScreen' #出现的位置为屏幕中央$btn1 = New-Object System.Windows.Forms.Button #创建按钮
$btn1.Location = New-Object System.Drawing.Size(10,10)
$btn1.Size = New-Object System.Drawing.Size(100,20)
$btn1.Text = "task1"
$btn1.Add_Click({btn1_click})
$form.Controls.Add($btn1)$text1 = New-Object System.Windows.Forms.TextBox #创建文本框
$text1.Location = New-Object System.Drawing.Point(150, 10)
$text1.Size = New-Object System.Drawing.Size(200, 20)
$form.Controls.Add($text1)$btn2 = New-Object System.Windows.Forms.Button
$btn2.Location = New-Object System.Drawing.Size(10, 50)
$btn2.Size = New-Object System.Drawing.Size(100,20)
$btn2.Text = "task2"
$btn2.Add_Click($btn2_click)
$form.Controls.Add($btn2)$text2 = New-Object System.Windows.Forms.TextBox #创建文本框
$text2.Location = New-Object System.Drawing.Point(150, 50)
$text2.Size = New-Object System.Drawing.Size(200, 20)
$form.Controls.Add($text2)$form.Topmost = $true #是否强制窗体在其他已打开的窗体和对话框上打开,True为强制
$form.showdialog()# task function
$btn2_click = {write-host $text2.Text -ForegroundColor Cyan -BackgroundColor Black
}function btn1_click {write-host $text1.Text -ForegroundColor Green -BackgroundColor Black
}