こんにちは、私は小さなプロジェクトをやって、今は途中で立ち往生しています。2つの/複数の列の配列の値を比較し、Visual Basicの重複なしでリストボックスに追加する方法
プログラムは、シーケンシャルテキストファイルを読み込み、構造体の配列/配列に読み込むことです。
データ情報は、この(サンプル)のようなものです:DATA.TXTファイルに
ID | Name | Type
1 | Cat | Animal
2 | Dog | Animal
3 | Parrot | Bird
4 | Tuna | Fish
5 | Tiger | Animal
6 | Sparrow | Bird
サンプル・データは次のようになります。
1;Cat;Animal
2;Dog;Animal
3;Parrot;Bird
4;Tuna;Fish
5;Sparrow;Bird
6;Tiger;Animal
これはただのサンプルデータ、私の元データとしてありますこれ以上です。
私はFileStreamReaderを使用してDATA.TXTファイルオープンしました:
Dim FileStreamReader As StreamReader = New StreamREader(DATA.txt)
リスト内のすべての要素を読み、ReadArrayString
を通過します。
スプリット使用して文字列:インデックス0はIDです
ReadArrayString(0)
ReadArrayString(1)
ReadArrayString(2)
て
DataString.Split(New Char() {";"c})
パスは、インデックス1は名前であり、そしてインデックス2は、その後、私はロードタイプ
です重複のない配列からのドロップダウンコンボボックスメニューにタイプします。このように:
If TypeComboBox.FindString(ReadArrayString(2)) < 0 Then
TypeComboBox.Items.Add(ReadArrayString(2))
End If
Now TypeComboBoxをクリックすると、次のリストのみのドロップダウンメニューが表示されます。この後
Animal
Bird
Fish
、動物の種類を選択したときに/それが唯一のListBoxに動物の種類のIDと名前を追加する必要がありますコンボボックスのドロップダウンメニューからクリックされました。
擬似コードは次のようになりますことがあります。
If Animal is selected/clicked from TypeComboBox then
Add Cat into listbox
Add Dog into listbox
Add Tiger into listbox
Else If Bird is selected then
Add Parrot into listbox
Add Sparrow into listbox
Else If Fish is selected then
Add Tuna in to listbox
End If
私は重複してコンボボックスに1列のみ/配列から負荷項目を把握だけしました。 しかし、ある列/配列の値を別の列/配列と比較してリストボックスにロードすることはできません。私は、コード内で一致する値をハードコードしたり、書き込んだりしたくない。私が欲しいのは、Arrayを使うことです。
どのようなヘルプも素晴らしいでしょう。
私の説明が悪い場合は申し訳ありません。上記の擬似コードがあなたに私の問題の理解を与えてくれることを願っています。