PowerShellを使用してWindowsフォームにタブコントロールを追加する方法について説明します。
この記事では、タブコントロールを使用して複数のタブを持つアプリケーションを作成する手順を紹介します。
Windowsフォームを作成する方法については、以下を参照してください。
参考
PowerShellでユーザーフォームを作成する
タブコントロールの概要
タブコントロールは、GUIアプリケーションで異なるセクションやページを切り替えるための方法です。
各タブは個別のコンテンツを表示し、ユーザーはタブを切り替えて必要な情報にアクセスできます。
タブコントロールを含むWindowsフォームの作成
タブコントロールを含むWindowsフォームを作成する手順です。
1.必要なアセンブリの読み込み
最初に、Windowsフォームを操作するために必要なアセンブリを読み込みます。
Add-Type -AssemblyName System.Windows.Forms
2.フォームの作成
GUIアプリケーションのベースとなるフォームを作成します。
$form = New-Object Windows.Forms.Form $form.Text = "タブコントロールのサンプル" $form.Width = 400 $form.Height = 300
3.タブコントロールの作成
タブコントロールを作成し、フォームにドッキングさせます。
$tabControl = New-Object Windows.Forms.TabControl $tabControl.Dock = [System.Windows.Forms.DockStyle]::Fill
4.タブページの作成
2つのタブを作成し、タブコントロールに追加します。各タブページのタイトルを設定します。
$tabPage1 = New-Object Windows.Forms.TabPage $tabPage1.Text = "タブ1" $tabControl.TabPages.Add($tabPage1) $tabPage2 = New-Object Windows.Forms.TabPage $tabPage2.Text = "タブ2" $tabControl.TabPages.Add($tabPage2)
5.コントロールの追加
各タブページに、そのタブで表示されるコンテンツを追加します。
今回はラベルを追加します。
$label1 = New-Object Windows.Forms.Label $label1.Text = "これはタブ1のコンテンツです." $label1.Location = New-Object Drawing.Point(10, 30) $label1.AutoSize = $true $tabPage1.Controls.Add($label1) $label2 = New-Object Windows.Forms.Label $label2.Text = "これはタブ2のコンテンツです." $label2.Location = New-Object Drawing.Point(10, 30) $label2.AutoSize = $true $tabPage2.Controls.Add($label2)
6.フォームにタブコントロールを追加
タブコントロールをフォームに追加して、全体のレイアウトを設定します。
$form.Controls.Add($tabControl)
7.アプリケーションの実行
フォームを表示し、アプリケーションを実行します。
[void]$form.ShowDialog()
完全なコード
Windowsフォームアプリにタブコントロールを追加する一連の処理は、以下のように記述することができます。
# タブコントロールを使用したPowerShellスクリプト # 必要なアセンブリを読み込む Add-Type -AssemblyName System.Windows.Forms # フォームを作成 $form = New-Object Windows.Forms.Form $form.Text = "タブコントロールのサンプル" $form.Width = 400 $form.Height = 300 # タブコントロールを作成 $tabControl = New-Object Windows.Forms.TabControl $tabControl.Dock = [System.Windows.Forms.DockStyle]::Fill # タブページ1 $tabPage1 = New-Object Windows.Forms.TabPage $tabPage1.Text = "タブ1" $tabControl.TabPages.Add($tabPage1) # タブページ2 $tabPage2 = New-Object Windows.Forms.TabPage $tabPage2.Text = "タブ2" $tabControl.TabPages.Add($tabPage2) # ラベル1をタブページ1に追加 $label1 = New-Object Windows.Forms.Label $label1.Text = "これはタブ1のコンテンツです." $label1.Location = New-Object Drawing.Point(10, 30) $label1.AutoSize = $true $tabPage1.Controls.Add($label1) # ラベル2をタブページ2に追加 $label2 = New-Object Windows.Forms.Label $label2.Text = "これはタブ2のコンテンツです." $label2.Location = New-Object Drawing.Point(10, 30) $label2.AutoSize = $true $tabPage2.Controls.Add($label2) # タブコントロールをフォームに追加 $form.Controls.Add($tabControl) # アプリケーションを実行 [void]$form.ShowDialog()
このスクリプトを実行すると、タブコントロールを持つGUIアプリケーションが表示されます。
![タブコントロール](https://pg-note.com/wp-content/uploads/2023/10/d1-2.png)
![タブコントロール](https://pg-note.com/wp-content/uploads/2023/10/d2-1.png)
まとめ
今回は、PowerShellでWindowsフォームアプリにタブコントロールを追加する方法について説明しました。
ユーザーはタブを切り替えて、異なるコンテンツを表示できます。
この例を拡張し、各タブページにさまざまなコントロールや機能を追加することができます。