PowerShell タブコントロールを使用してWindowsフォームを作成する

PowerShell

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アプリケーションが表示されます。

タブコントロール
タブコントロール

 

まとめ

今回は、PowerShellでWindowsフォームアプリにタブコントロールを追加する方法について説明しました。

ユーザーはタブを切り替えて、異なるコンテンツを表示できます。

この例を拡張し、各タブページにさまざまなコントロールや機能を追加することができます。

 

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