ディレクトリの取得
何度もお尋ねしてすみません。
foreachを使ってcheckedListBoxで選択されているアイテム名を全て取得したいです。
とりあえず配列に入れテキストボックスに表示しようと頑張ってみました。
しかしいくらやってもforeachでエラーが返ってきてしまいます。
どの様にすれば取得できるでしょうか?
this->checkedListBoxItem->
VC++.netでcheckedListBoxで選択されている項目を取得する。
Re:VC++.netでcheckedListBoxで選択されている項目を取得する。
CheckedItemsプロパティの中身を取り出していけばOKです。
この際、ListBox内のアイテムに関してはObject型になってますので、登録した際と同じ型にキャストして使用しなければなりません。
下記のサンプルでは、String型のアイテムが格納されてあるCheckedListBox内の選択されているアイテムをメッセージボックスで順次表示していっています。
この際、ListBox内のアイテムに関してはObject型になってますので、登録した際と同じ型にキャストして使用しなければなりません。
下記のサンプルでは、String型のアイテムが格納されてあるCheckedListBox内の選択されているアイテムをメッセージボックスで順次表示していっています。
for each (System::Object^ obj in this->checkedListBox->CheckedItems) { System::Windows::Forms::MessageBox::Show(((System::String^)obj)); }
Re:VC++.netでcheckedListBoxで選択されている項目を取得する。
ちなみにforeachを使用せずに、forで記述すると下記のような感じです。
for (int i = 0; i < checkedListBox1->CheckedItems->Count; ++i) { MessageBox::Show((String^)(checkedListBox1->CheckedItems)); }
Re:VC++.netでcheckedListBoxで選択されている項目を取得する。
ご回答ありがとうございます。
別のやり方も教えて頂きありがとうございました。
foreachはあまりつかったことがないので(PHPで使った程度)
取っ付きにくいですが頑張ります。
別のやり方も教えて頂きありがとうございました。
foreachはあまりつかったことがないので(PHPで使った程度)
取っ付きにくいですが頑張ります。
Re:VC++.netでcheckedListBoxで選択されている項目を取得する。
foreachの使用法、もちろん、知っておいて損はありませんが…。
もし、forループの方が分かりやすかったり、馴染み深いのであれば無理に拘って使う必要はないかと思います。
実際、foreachでなければいけないという局面はほとんど無く、大抵の場合はforループで同等の処理を行えますしね。
ArrayクラスならLengthプロパティ、ListクラスならCountプロパティで要素数を取得できますから、インデックスの作成も容易ですしね。
もし、forループの方が分かりやすかったり、馴染み深いのであれば無理に拘って使う必要はないかと思います。
実際、foreachでなければいけないという局面はほとんど無く、大抵の場合はforループで同等の処理を行えますしね。
ArrayクラスならLengthプロパティ、ListクラスならCountプロパティで要素数を取得できますから、インデックスの作成も容易ですしね。