none
コードで複数のラジオボタンを追加する方法 RRS feed

  • 質問

  • コードで複数のラジオボタンを追加したいのですが、うまく動作してくれません。ラベルやチェックボックスなどと同様に"Add"を使用しているのですが、最初の1つしか追加されないようです。何か足りないのでしょうか?

    2008年3月31日 6:14

回答

  • 外池と申します。

     

    とりあえずの疑問なのですが、「ラベルやチェックボックスなどと同様に"Add"を使用して」というところが、よくわかりません・・・。何にAddされているのでしょうか?

     

    次に、先日ご質問のあった「テキストで200問」のお仕事の続きかな? と勝手に推察していますが、もしそうであれば、例えばですが、ラジオボタンを、とにかく想定される最大の数貼り付けておいて、選択肢の数によって、表示の上だけで必要な数だけ見えるようにする、ということもひとつの方法かな? と思います。ラジオボタンのVisibleプロパティーで。

     

    ラジオボタンの数が増えるときは「追加」する・・・、でも、数が減るときは「削除」しないといけないですよね? 「追加」「削除」を頻繁に繰り返すのは、なかなか管理が大変だと思います。

     

     

    2008年3月31日 6:32
  • 外池です。

     

    Addの件は、了解です。私も、調べてみて、Controls.Addにたどり着きました。(表示の上だけの見える見えない、は、横においておいて)基本的に、これで大丈夫のハズですね・・・。

     

    Code Snippet

            Dim RadButton1 As New RadioButton
            With RadButton1
                .Left = 0
                .Top = 0
                .AutoSize = True
                .Text = "Tset1"
            End With
            Me.Controls.Add(RadButton1)

     

            Dim RadButton2 As New RadioButton
            With RadButton2
                .Left = 0
                .Top = 20
                .AutoSize = True
                .Text = "Tset2"
            End With
            Me.Controls.Add(RadButton2)

     

     

    こんな感じで、書いてやったら、一応、ラジオボタンが2つ現れましたが・・・。
    2008年3月31日 7:13

すべての返信

  • 外池と申します。

     

    とりあえずの疑問なのですが、「ラベルやチェックボックスなどと同様に"Add"を使用して」というところが、よくわかりません・・・。何にAddされているのでしょうか?

     

    次に、先日ご質問のあった「テキストで200問」のお仕事の続きかな? と勝手に推察していますが、もしそうであれば、例えばですが、ラジオボタンを、とにかく想定される最大の数貼り付けておいて、選択肢の数によって、表示の上だけで必要な数だけ見えるようにする、ということもひとつの方法かな? と思います。ラジオボタンのVisibleプロパティーで。

     

    ラジオボタンの数が増えるときは「追加」する・・・、でも、数が減るときは「削除」しないといけないですよね? 「追加」「削除」を頻繁に繰り返すのは、なかなか管理が大変だと思います。

     

     

    2008年3月31日 6:32
  •  

    >先日ご質問のあった「テキストで200問」のお仕事の続きかな? と勝手に推察していますが、

     

    はい、その通りです。

     

    >何にAddされているのでしょうか?

     

    Me.Controls.Add (Radiobutton1) などとしています。これでラベルなどは問題なく追加されるのですが…

     

    >表示の上だけで必要な数だけ見えるようにする、ということもひとつの方法かなと思います。

     

    確かに、その方法が良いですね。気が付きませんでした。ありがとうございました。

     

     

    2008年3月31日 6:56
  • 外池です。

     

    Addの件は、了解です。私も、調べてみて、Controls.Addにたどり着きました。(表示の上だけの見える見えない、は、横においておいて)基本的に、これで大丈夫のハズですね・・・。

     

    Code Snippet

            Dim RadButton1 As New RadioButton
            With RadButton1
                .Left = 0
                .Top = 0
                .AutoSize = True
                .Text = "Tset1"
            End With
            Me.Controls.Add(RadButton1)

     

            Dim RadButton2 As New RadioButton
            With RadButton2
                .Left = 0
                .Top = 20
                .AutoSize = True
                .Text = "Tset2"
            End With
            Me.Controls.Add(RadButton2)

     

     

    こんな感じで、書いてやったら、一応、ラジオボタンが2つ現れましたが・・・。
    2008年3月31日 7:13
  • 確かに、記入頂いたコードをコピーして実行してみると、こちらのプログラムでも2つラジオボタンが追加されました。

    AutoSizeを省略していたり、宣言の場所が違っていたり… 何かが違っていたようです。

    2008年3月31日 7:37
  • こんにちわ。森田 知良です。
    みなさんフォーラムのご利用ありがとうございます。

     

    外池さん、有用な情報ありがとうございました。

     

    斎藤 晃さん、フォーラムのご利用ありがとうございます。

    私の方で外池さんの情報は、有用な情報と判断しましたので、
    勝手ながら回答済みチェックを付けさせていただきました。
    追加の質問がある場合は、是非もう一度投稿してくださるようお願いします。

     

    回答済みチェックが付くことにより、有用な情報を探している方が情報を見つけやすくなります。
    有効な回答があった場合は、なるべく回答済みボタンを押してチェックを付けてくださるようお願いします。

     

    なお、斎藤 晃さんの意図しない回答にチェックが付いていた場合は、
    回答済みチェックを解除することもできますのでご確認ください。


    それでは、これからもフォーラムのご利用をよろしくお願いいたします。

    2008年4月3日 5:03