VB.net

【VB.net】チェックボックスの配置とイベント処理の実装




【VB.net】チェックボックスの配置とイベント処理の実装

 

みなさんこんにちは、ソラです。

 

VB.netのチェックボックスの配置やイベント処理はどうするの?
リク

 

こんな悩みを解消していきます。

 

本記事の内容

  • VB.netのチェックボックスの配置方法
  • VB.netのチェックボックスのイベント処理
  • VB.netのチェックボックスイベント解除と発生方法

 

本記事ではVB.netのチェックボックス配置方法とイベント処理についてまとめていきます。

 

VB.netでGUIを作成する際、必ずと言ってよいほど使用されるコントロールの1つ、チェックボックス。

触りだけでも覚えておくと、いざ開発を行うとき非常に便利です。

 

ソラ
ではさっそく一緒に使用していきましょう!
Visual Studio 2019 Communityのインストール方法
参考Visual Studio 2019 Communityのインストール方法【個人開発向け】

 

 

チェックボックスの配置方法

まずはチェックボックスの配置方法です。

 

Visual Studioを開いたら、ツールボックスから「CheckBox」を選択してフォームに張り付けましょう。

チェックボックス配置

 

上写真のように、今回は3つチェックボックスを配置してみましょう。

 

チェックボックスのテキスト変更

次にチェックボックスのテキストを変更していきます。

 

フォームをダブルクリックして、Loadプロシージャを開きます。

そこで下記コードを書いて実行してみましょう。


'// チェックボックスのテキスト変更
CheckBox1.Text = "VB.net"
CheckBox2.Text = "Python"
CheckBox3.Text = "JavaScript"

 

実行後、下写真のようにテキストが変更されていればOKです。

チェックボックスのテキスト変更

 

チェックボックスのチェック状態変更

次にチェックボックスのチェック状態を変更していきます。

 

チェック状態の変更はCheckedプロパティを使用します。


'// チェック状態の変更
CheckBox1.Checked = True
CheckBox2.Checked = False
CheckBox3.Checked = True

 

プログラムを実行してみましょう。

下写真のように、VB.netとJavaScriptにチェックが入っていればOKです。

チェックボックスのチェック状態変更

 

チェックボックスのイベント処理

次にチェックボックスで非常に大事なイベント処理についてまとめていきます。

 

VB.netのチェックボックスのイベント処理は主に2パターンの方法で行われることが多いです。

チェックボックスのイベント処理方法

  • CheckedChangedでの実装
  • Clickでの実装

 

1つずつ解説していきますね。

 

CheckedChangedでの実装

1つはCheckedChangedでの実装方法です。

 

下写真のように、CheckBox1をクリックしてイベントの”CheckedChanged"をダブルクリックしてプロシージャを開きましょう。

CheckedChangedでの実装

 

プロシージャの中身は下記のように書きます。


Private Sub CheckBox1_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox1.CheckedChanged
    If CheckBox1.Checked = True Then
        MsgBox("CheckBox1にチェックがつきました")
    Else
        MsgBox("CheckBox1のチェックが外れました")
    End If
End Sub

 

プログラムを実行してみましょう。

すると、画面より先に”CheckBox1にチェックがつきました”というメッセージが表示されるはずです。

 

その後、画面でCheckBox1(VB.net)をクリックするたびにメッセージが切り替わる仕組みになっています。

 

Clickでの実装

もう1つはClickでの実装方法です。

 

下写真のように、CheckBox2をクリックしてイベントの”Click"をダブルクリックしてプロシージャを開きましょう。

Clickでの実装

 

プロシージャの中身は下記のように書きます。


Private Sub CheckBox2_Click(sender As Object, e As EventArgs) Handles CheckBox2.Click
    If CheckBox2.Checked = True Then
        MsgBox("CheckBox2にチェックがつきました")
    Else
        MsgBox("CheckBox2のチェックが外れました")
    End If
End Sub

 

コードの中身自体はほぼ変わりません。

ですが、実行するとCheckedChangedのように最初にメッセージが表示されません。

 

Clickイベントは名の通り、クリックした時のみ処理が行われます。

 

< まずはプログラミング無料体験レッスンから >

侍エンジニア塾を見てみる

 

CheckedChangedのイベント解除と発生方法

なんでCheckedChangedは最初にメッセージが表示されるの?
リク
ソラ
良いところに目を付けました!

 

実はCheckedChangedはClick処理とは違い、チェック状態が変更された場合に処理が行われるのです。

 

今回のプログラムでは、ロード時にCheckBox1を故意的にTrueに設定していますよね。

そこで変更されたという認識になり、CheckedChanged処理が最初に行われメッセージが表示されたのです。

 

しかし、初期状態でメッセージの表示は想定していません。

そこでここではCheckedChangedのイベント解除と発生方法についてまとめていきます。

 

まずは下記コードをロードプロシージャの中身と書き換えてください。


'// イベント解除
RemoveHandler CheckBox1.CheckedChanged, AddressOf Me.CheckBox1_CheckedChanged

'// チェックボックスのテキスト変更
CheckBox1.Text = "VB.net"
CheckBox2.Text = "Python"
CheckBox3.Text = "JavaScript"

'// チェック状態の変更
CheckBox1.Checked = True
CheckBox2.Checked = False
CheckBox3.Checked = True

'// イベント発生
AddHandler CheckBox1.CheckedChanged, AddressOf Me.CheckBox1_CheckedChanged

 

実行してみると、最初にメッセージが表示されなくなったはずです。

 

使い方としては、イベントをスキップしたい部分を挟むように、解除と発生処理を書くことです。

イベントの解除・発生の違いは下記部分です。

ポイント

・イベント解除 → RemoveHandler

・イベント発生 → AddHandler

 

解除と発生は対の関係ですので、1セットで使用することを心掛けましょう。

ソラ
イベント解除・発生方法はよく使うため覚えておきましょう!

 

まとめ:【VB.net】チェックボックス

チェックボックスはイベント処理が非常に大切で厄介なコントロールです。

特にCheckedChangedはイベント解除・発生を忘れることが多々あるため、エラーやミスにつながりやすい部分でもあります。

 

本記事で基礎をしっかり身に付けて開発に取り組んでみましょう。

ソラ
お疲れさまでした!

合わせて読みたい記事

VB.netのボタンの配置方法とクリックイベント処理の実装
【VB.net】ボタンの配置方法とクリックイベント処理の実装




-VB.net
-

© 2022 ソラブログ Powered by AFFINGER5