tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板) [ツリー表示へ]   [Home]
一括表示(VB.NET VB2005)
タイトルラベルコントロールの作成について
記事No9696
投稿日: 2009/12/04(Fri) 09:39
投稿者monmon
お世話になります。
 ラベルコントロールを panel2 に作成するつもりでしたが、下記のようではフォーム
 に作成されていまいます。
 ご教示お願いします。


        With Panel2
            For ig As Integer = 1 To 20
                Me.la(ig) = New Label()
                Me.la(ig).Name = "syuusi" & ig.ToString()
                Me.la(ig).Text = ""
                Me.la(ig).Left = 3 + 65 * (ig - 1)
                Me.la(ig).Top = 35
                Me.la(ig).Width = 62
                Me.la(ig).Height = 18
                Me.Controls.Add(Me.la(ig))
            Next ig
        End With

[ツリー表示へ]
タイトルRe: ラベルコントロールの作成について
記事No9697
投稿日: 2009/12/04(Fri) 10:33
投稿者魔界の仮面弁士
>  ラベルコントロールを panel2 に作成するつもりでしたが、下記のようではフォーム
>  に作成されていまいます。

作成したラベルを、Panel2 ではなく「Me」に登録しているからだと思いますよ。

>  Me.Controls.Add(Me.la(ig))

[ツリー表示へ]
タイトルRe^2: ラベルコントロールの作成について
記事No9699
投稿日: 2009/12/04(Fri) 15:13
投稿者monmon

魔界の仮面弁士様
   Me.Controls.Add(Me.la(ig)) を  panel2.Controls.Add(panel2.la(ig)) に変更し
  希望どうりの貼り付けができました。
  panel2 のla(ig) をクリックして 何番目がクリックされたかを知ることはできますか。
  ご教示よろしくお願いします。

[ツリー表示へ]
タイトルRe^3: ラベルコントロールの作成について
記事No9700
投稿日: 2009/12/04(Fri) 15:32
投稿者魔界の仮面弁士
> panel2 のla(ig) をクリックして 何番目がクリックされたかを知ることはできますか。

できますよ。

動的に生成したコントロールのイベントを拾うには、
AddHandler ステートメントを使う事ができます。

また、Click イベントの第 1 引数を見ることで、
どの la(ig) がクリックされたのかがわかります。

[ツリー表示へ]
タイトルRe^4: ラベルコントロールの作成について
記事No9705
投稿日: 2009/12/05(Sat) 16:35
投稿者monmon

魔界の仮面弁士様

> AddHandler ステートメントを使う事ができます。
> また、Click イベントの第 1 引数を見ることで、

AddHandler ステートメントとClick イベントを活用し
希望通りの動作を実行できました。
ご指導に感謝します。お世話になりました。

[ツリー表示へ]