私はこれらすべてに非常に慣れておらず、検索を試みましたが、私が求めているものを達成するのに役立つものは何も見つかりません.
私はVBに次のフォームを持っています:
タブコントロール x 1 タブコントロールのさまざまなタブに配置されるチェックボックス x 10 リストボックス x 1
チェックボックスのいずれかをオンにすると、そのテキストがリストボックスに追加され、オフにすると、テキストがリストボックスから取得されます。
これは、チェックボックスごとに changedcheck イベントの if ステートメントを使用して非常に簡単に実現できますが、すべてのチェックボックスに対してこれを行う必要があります。さらに、後の段階で追加する場合は、そのコードを追加することを忘れないでください。
理想的には、次のようなメソッドが必要です: 値が true の場合はタブコントロールのすべてのチェックボックスをチェックし、値が false の場合は文字列にテキストを書き込み、文字列からテキストを取得します。文字列をリストボックスに入れます。
私はこのようなものから始めました...
Dim chk As CheckBox
Dim txt As String = ""
For Each chk In TabControl1.Controls
If chk.Checked = True Then
txt = txt + chk.Text +vbCrLF
Else
txt = replace(txt, chk.text + vbCrLf, "")
End If
Next
End Sub
最初の問題は、上記が明らかに機能しないことです! そのため、ガイダンスをいただければ幸いです-他のコードからスクラップを読んでまとめました。
2 番目の問題は、以前は各コントロールに CheckedChanged イベントを使用していたため、リスト ボックスがどのように更新されるかを理解できないことです。チェックボックスのいずれかである可能性があります(うまくいけば、それは理にかなっています!)。チェックしたチェックボックスをリストボックスに追加するためにボタンを押す必要はなく、動的にしたい
どんな助けでも大歓迎です。