2008年06月06日

GroupBox内の複数のラジオボタン、チェックボックスが存在する場合のFor Eachで検索する。

GroupBox内に、チェックボックスやラジオボタンが混在している場合
以前にご紹介した↓のようなFor Each文でのチェックはできません。

一つの項目をチェックできるようにする。

「複数の項目をチェックできるようにする。」

上記の例では、GroupBox内に、複数のコントロールが存在することは考慮していません。

GroupBox内でチェックボックス、ラジオボタンが混在する場合に、どのラジオボタンにチェックが入っているのかを取得する方法のご紹介です。

>>>


>>>

sample024.jpg
クリックすれば拡大します。

上図のように、GroupBox内に、ラジオボタン、チェックボックスの2種類が混在しています。

コントロールを検索する方法としては同じですが、見つかったコントロールが”RadioButton”であれば、そのチェック状態を判断すると言う方法をとります。

<コード>
==============================
Public Class Form1

  Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

    'ラジオボタンでオブジェクトを宣言するのではなく、
    'オブジェクトとして宣言します。

    Dim obj As Object

    'GroupBox内のコントロールを探します。
    For Each obj In GroupBox1.Controls
      '見つかったオブジェクトのタイプが”RadioButton”
      'の場合

      If TypeName(obj) = "RadioButton" Then
        'オブジェクトのチェック状態を確認します。
        If obj.checked = True Then
        'チェックされていれば、ラベルにその名前
        'を表示します。

          Label1.Text = obj.name
        End If

      End If

    Next

  End Sub

End Class
==============================

GroupBox内にボタンなどが配置されていても、上記の内容でチェックできます。
チェックボックスも同様にチェックすることが可能です。


posted by Debring at 10:00 | Comment(0) | TrackBack(0) | VB2005 ラジオボタン
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:


この記事へのトラックバック
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。