PowerShell(GUIのテンプレを作っておく)


テンプレ探偵ドラマだと思います。面白いです。型にはまっているからこそ楽しめます。
漫画は80年台の連載なので、もしかしたら当時はテンプレではなかったのかもしれません。古くても新しいものですね。

今回は、PowerShellでGUIを使うためのテンプレです。めったにGUIを使わない私ですが、たまに他人へ配布する際、コマンドで渡すと不親切なので、GUI化して渡したりします。
その時に、いちいちGUIのためにプログラミングしていると時間がかかってしまうので、先にテンプレを用意しておきます。

このようなテンプレートを作っておいて、

[Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")
 
$f=New-Object System.Windows.Forms.Form
$f.Text="PowerShell GUI"

$label=New-Object System.Windows.Forms.Label
$label.Location=New-Object System.Drawing.Point(5,30)
$label.Size=New-Object System.Drawing.Size(70,20)
$label.Text="LABEL"

$textbox1=New-Object System.Windows.Forms.TextBox
$textbox1.Location=New-Object System.Drawing.Point(75,30)
$textbox1.Size=New-Object System.Drawing.Size(110,20)
$textbox1.Text="DEFAULT TEXT"

$button=New-Object System.Windows.Forms.Button
$button.Location=New-Object System.Drawing.Point(210,30)
$button.Size=New-Object System.Drawing.Size(70,20)
$button.Text="PUSH"
$button.Add_Click({$textbox2.Text+=$textbox1.Text+"`r`n"})

$textbox2=New-Object System.Windows.Forms.TextBox
$textbox2.Location=New-Object System.Drawing.Point(5,60)
$textbox2.Size=New-Object System.Drawing.Size(295,200)
$textbox2.MultiLine=$true

$f.Controls.Add($label)
$f.Controls.Add($textbox1)
$f.Controls.Add($button)
$f.Controls.Add($textbox2)

$f.ShowDialog()

配布時にその時の気分でカスタマイズして渡します。

ボタンをクリックする度に、小さいテキストボックスに入力した内容が、大きなテキストボックスに追記されます。

Leave a Reply

Your email address will not be published. Required fields are marked *

CAPTCHA