• ベストアンサー

TreeViewの追加 C++Builder

TreeViewが2つあるとします。 TreeView1へTreeView2のツリーを追加したい場合 どのようにすればよいでしょうか? TreeView2の複数のノードを追加したいのですが。 どなたか、お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • KoHal
  • ベストアンサー率60% (110/181)
回答No.1

追加したいのは1つのノードから始まるツリーということでいいんでしょうか? それでよければ、TTreeView::Selectedで選択ノードを取得して、TTreeNode::Itemでその子ノードを取得して1つづつ追加してゆくことになります。 やりたいことをもっと具体的に提示した上で質問されたら、もう少し具体的なアドバイスも出来るのですが。

yama888
質問者

補足

説明不足ですみません。 TreeView2で任意に作成したツリーを、ボタンを押すと TreeView1に付け足すようにしたいです。

関連するQ&A

  • TreeViewについて

    TreeViewを使う場合、その管理情報(親ノードのIDとかKeyとか。。子ノードの情報とか、、)をテーブルに保存しておくと便利な気がするのですが、TreeViewを使う場合の基本(テーブル作成時)みたいなのを教えてもらえませんでしょうか?

  • C# treeviewについて

    VS2017で独学でC#を勉強しています。 treeviewでエクスプローラのようにドライブを表示する方法を教えてください。 それとtreeviewで検索しているとノードという単語がでてきます。 これは何のことでしょうか? treeviewにこだわっているわけではなく、エクスプローラのように表示する方法でしたらなんでもいいです。 よろしくお願いします。

  • C# TreeView 効率良いノード追加の仕方

    C# TreeViewについて質問させてください。 ノード(子ノード含む)を数万件以上登録する際に、効率の良い方法を教えて頂けないでしょうか? 実際のコードとは異なりますが、大まかに以下のような処理をメインスレッドで行っています。 class MyTreeNode : TreeNode{   void AddNode(){     BeginUpdate();     SuspendLayout();     foreach( var 親ノード情報 in 親ノード情報リスト ){       TreeNode parentNode = new TreeNode( 親ノード名 );       foreach( var 子ノード情報 in 子ノード情報リスト ){         TreeNode childNode = new TreeNode( 子ノード名);         parentNode.Nodes.Add( childNode );       }       this.Nodes.Add( parentNode );     }     ResumeLayout();     EndUpdate();   } } この方法ですと、かなり時間がかかってしまい、UIが固まったようになってしまいます。 (TreeViewに、子ノードの一斉展開機能が必要なので、親ノード展開時のイベントを拾って  子ノードを追加する方法は上記と同じく遅くなってしまうのではと思っていますがどうなんでしょうか?)

  • C# TreeViewのノードの判定

    TreeViewでクリックしたノードの位置が親ノード(+の位置)かそれとも配下の子ノード なのか判定することはできますでしょうか。

  • TreeView と DOMツリー

    C# WPF でプログラミングをしています。 TreeView に XML の階層構造を表示させて、ある項目を選択し、ボタンをクリックするとその項目の子ノードが追加されるようにするプログラムを作っています。 選択した項目(TreeView.SelectedItem(Object型)) を、DOMツリーの要素ノード (XmlElement型) にキャストし、それに新しく作った要素ノード(XmlElement型)をつなげるといったようにしているのですが、その際「挿入するノードは、異なるドキュメント コンテキストのものです。」のエラーが発生してしまいます。 XmlElement tvi = treeView.SelectedItem as XmlElement; XmlElement item = doc.CreateElement("item"); tvi.PrependChild(item); // エラー発生箇所 ※ doc は XmlDocument のインスタンスです。 解決策を教えてください。よろしくお願いします。

    • ベストアンサー
    • XML
  • TreeViewについて

    いつも大変お世話になっております。福島です。 TreeViewのことで教えて頂きたいのですが・・・ 社員登録で3階層(部・課・社員)のツリー構造をなす TreeViewを作成しましたが、1社員の情報を変更したときに 状態を反映するためにTreeView全体を消去してから書き直しています。 (例えば)課や部を移動したとき しかし表示する数が多くなってきた為に再構築に非常に時間が かかってしまい実用的でなくなってしまいました。 あるノードの下だけ変更(削除)する方法はありますか? 今は、「treeView.Nodes.Clear」を使用して全体を削除して 再度ツリーを作成しています。 aNode(部) bNode(課) cNode(社員) のようになっています。 宜しくお願い申し上げます。 Windows2000SP2 + VB6.0SP4

  • 【C#】TreeViewでクリックした親ノードと、子ノードを表示させた

    【C#】TreeViewでクリックした親ノードと、子ノードを表示させたい C#初心者です。 TreeView(treeView1)で親ノードをクリックしたら、その親ノード+子ノードを、別のTreeView画面(treeView2)に表示させたいのですが、やり方がわかりません。 例えば、 +A  -B  -C +D  -E というTreeViewの場合、Aの親ノードをクリックしたら、Aの親ノードと、BとCの子ノードが、別画面(treeView2)に表示されるようにしたいです。 どなたか分かる方いらっしゃいましたら教えていただけると幸いです。 宜しくお願いいたします。

  • VC#のTreeViewコントロールについて

    こんばんは。 VC#2005ExpressEditionで、TreeViewコントロールを使ったフォームを作ろうとしています。 フォームの左側にTreeViewコントロールをおいて、 ノードを選択するたびに、右側が切り替わるようなフォームを作りたいと考えています。 ちょうどeclipseの設定画面みたいな感じです。 ノードの数はすでに決定しています。 ただ、いろいろ調べたのですが、 ノードを追加したり削除したり、コードにアイコンを設定したり、 そういった情報はあるのですが、私がやってみたいことの情報は見つかりませんでした・・・。 ノードに対応するフォームをひとつづつ作って、ノードが選択されたときにそれを呼び出す、 のような感じだと思うのですが、具体的にどのように設定したらよいか分かりません・・・。 ご存知の方がいらっしゃったら教えていただけませんか? よろしくおねがいします。

  • TreeViewで複数ノードの選択は可能ですか?

    VisualBasic2005でwindowsアプリの開発をしています。 今回希望として、複数のノードを一度にドラッグするというのがあるのですが、 TreeViewで複数ノードの選択は可能なのでしょうか? そして、もし可能な場合、それらを一気にドラッグということは可能でしょうか? ドロップ先では、ドラッグ中のノードのtextが取れればよいです。 よろしくお願いします。

  • C#でtreeviewの指定ノードを選択する

    C#にて、 treeviewでの選択ノードを記憶しておき、 treeviewを一度更新(削除し作成)し、 記憶してあるノードを再び選択する。という動きをしたいです。 TreeNode tn = new TreeNode(); tn = treeView1.SelectedNode; //ここでDB再読み込み→treeView再作成 treeView1.Focus(); treeView1.SelectedNode = tn; としているのですが、TopNode選択状態になってしまい、 最初に選択していたNodeを選択してくれません。 どなたかご教授願います。 よろしくお願いいたします。