掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
CLRでツリービューのノードを描画するには (ID:67660)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
επιστημηさん、ありがとうこざいます。 また、わからなくなりました。 最後にご提示のコードのうち、まず、Dictionaryは、VC++では用意されていないようです。 ただ、こうしたものを使わなくても、下記で、通るような気がしたのです。 array<String^>^ data = { // テキスト, 親テキスト "ナミヘイ", nullptr, "サザエ", "ナミヘイ", "カツオ", "ナミヘイ", "ワカメ", "ナミヘイ", "タラ", "サザエ", }; TreeNode^ node; TreeNode^ current = nullptr; for ( int i = 0; i < 5*2; i += 2 ) { node = gcnew TreeNode(data[i]); if ( i == 0 ) { treeView2->Nodes->Add(node); } else { current = gcnew TreeNode(data[i+1]); current->Nodes->Add(node); } } 再帰のコードで、ステッブ実行すると、「さざえ」ノードを追加するとき、TreeNode^ current は、 gcnew TreeNode("ナミヘイ"); になっています。 それで、 current->Nodes->Add(gcnew TreeNode("サザエ")); で、 ナミヘイの子ノードに、サザエが追加されています。 ということは、再帰を使わなくても、 current = gcnew TreeNode(data[i+1]); //(data[i+1]は"ナミヘイ") current->Nodes->Add(node); //(nodeは"ナミヘイ") で、同じように、ナミヘイの子にサザエが追加されるはずだと思いました。 でも、実際には、ナミヘイしか表示されません。 重ね重ね申し訳ありませんが、アドバイスを頂けませんでしょうか。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.