
VB2005による開発に漬かります。早速
昨夜はマスタ保守プログラムを1本完
成させました。スタートダッシュが大切。
今回の作業で一番工夫できた(さんざん悩みましたが)ところをご紹介。
フォームに配置したオブジェクトの名前をコード内部で動的に指示してあげるところです。
今回のフォームでは、CheckBoxが10個、それに対応するLabelが10個配置されています。
CheckBoxのオン、オフの状況によりLabelの文字を変える必要があります。CheckBoxと
Labelにはそれぞれ[chkAAA][lblAAA]、[chkBBB][lblBBB]…という名前をつけてあります。
CheckBoxのCheckedChangeイベント内で、
| 1 | Dim strName As String = Replace(sender.name, "chk", "lbl") |
| 2 | Dim cs As Windows.Forms.Control() = Me.Controls.Find(strName, True) |
| 3 | CType(cs(0), Windows.Forms.Label).Text = "可能" |
| 4 | CType(cs(0), Windows.Forms.Label).ForeColor = Drawing.Color.Blue |
オブジェクトが存在するかをControls.Findで検索してあげます。今回の場合はデザイン時点
で名前をつけてあるため、絶対に存在することになります。
そしてLabelオブジェクトのTextプロパティ、ForeColorプロパティをセットしてあげたら完成!
大満足な仕上がりになりました^^v この勢いを維持しつつ、2ヶ月間頑張ります



