• ベストアンサー

ツリービューのノードをダブルクリックしたことを判断させるには

 VBにて、ツリービューのノードをダブルクリックしたときにこうする、というような処理をさせるにはそうすればいいんでしょうか。  TreeView1_NodeClickというのはありますが、ダブルクリックに関してはDblClickだけしか存在せず、どのノードを選択したかを取得できません。  どなたか、TreeView1_NodeClickのようにノードをダブルクリックした時に限り、そのノードを取得して処理をさせるというような方法を教えてください。  よろしくお願いします。

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

  • ベストアンサー
  • haporun
  • ベストアンサー率40% (230/562)
回答No.1

Private ClickedNode As MSComctlLib.Node Private Sub TreeView1_DblClick() MsgBox ClickedNode.Text + "がダブルクリックされました" End Sub Private Sub TreeView1_NodeClick(ByVal Node As MSComctlLib.Node) Set ClickedNode = Node End Sub NodeClickイベントで、クリックされたノードをセットしておき、ダブルクリックイベントでそれを利用するというのはどうでしょう。

ikazuti
質問者

お礼

早速、ありがとうございます。 全く同じではありませんが、考え方を参考にさせていただき、成功しました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • ツリービューのノードを閉じた時のイベント

    VB6でツリービューを利用したプログラムを組んでいます。ツリービューのイベント処理において、ツリービューのノードを展開した時には、Expandイベントで取得することが可能だと思うのですが、ノードを閉じたときのイベントは、取得することができるのでしょうか?

  • ツリービューについて

    いつも参考にしています。 今回初めてVBで開発することになりました。 ツリービューの部分で詰ってしまいました。 【内容1】 2階層のツリーで下位階層(子)が選択されているときだけ実行したい処理があります。 現在選択しているノードが上位階層(親)か下位階層(子)か判断できるような関数などあるのでしょうか? 【内容2】 現在、画面上のツリービュー表示項目をダブルクリックすると値を更新できてしまうのですが、更新不可にできないでしょうか? どちらも初歩的なことなのかも知れませんが、検索しても分からなかったんです。 どうぞアドバイスお願いします。 VBは6.0です。

  • VB6.0ツリービューについて

    現在、VB6.0で開発をしております。 その中で、ツリービューを使用しています。 で、ツリービューのノードを設定してある状態で、ユーザがクリックしてノードのひとつを選択するのではなく、プログラムからあるひとつのノードを選択状態にするにはどうすればよいでしょうか? ご教授いただけますでしょうか。よろしくお願いします。

  • VB2005 ツリービューに子ノードを追加

    VB2005 ExpressEditionにて開発しています。 フォームロード時にデータセットからツリービューにデータをセット しようとしています。 ルートノードには  Dim Node As TreeNode  Node = TreeView2.SelectedNode  TreeView2.Nodes.Add("追加したい名前") で追加できます。 子ノードを追加する時はどうしたらいいのでしょうか。 ご存知の方がいらっしゃいましたら教えて下さい。 よろしくお願いします。

  • ツリービューでクリック時にアイコンを変化させる方法

    ツリービューでノードの複数選択ができないので 選択されたノードのアイコンの切替を行い 複数選択されたように見せかけるという処理を行っています。 しかし、 ノードをクリックされた時のみ変更されればよかったのですが、 ダブルクリックでノードを開いた場合、クリック時のイベントが発生し アイコンが一瞬変更されてしまいます。 今ではクリックされてから一定時間以内にダブルクリックのイベント が発生しなかった場合のみアイコンを変更していますが、 その場合変更されるまでの反応が遅くなってしまいます。 クリックした時のみアイコンを変更される よい処理法があったらお教え下さい 宜しくお願いします。

  • 新しいノード

    TreeViewで新しいノードを作成した時、 その新しくできたノードを選択状態にするには どうすればいいのでしょうか? Lastノード、Nextノードを使ってみたのですが、 うまく取得できませんでした。 お願いします。 開発環境はVB.Net2003です。

  • ツリービューの使い方が・・・

    VBのカスタムコントロールはほとんどさわったことがないので、ぜんぜんわからないです。 初心者っぽい質問で申し訳ないのですが、プロセスとプロセスがもっているスレッドを、プロセスID&スレッドIDをキーにツリー構造を持たせたいのですが、ツリービューのツリーへのアクセスのしかたがわかりません。 MSDNライブラリが壊れているようで、ヘルプが出ないのです。 新しいMSDNライブラリ入れてから、トラブル続き。 TreeView1.Nodes.Add , , "キー", "値" TreeView1.Nodes.Add , , "キー\サブキー", "値" じゃなさそうみたいです。 かといってそれぞれのノードが小枝への参照をもっているわけでもないし、小枝を追加するメソッドをもっているわけでもないし。 単純に小枝への追加のしかたが知りたいだけなんですけど・・・。 だれか教えてください。

  • ツリービューを閉じさせたくない。

    いつもお世話になっております。 現在、WIN2000(sp4) SQLServer2000(sp3) で開発をしています。 ツリービューそのものの理解不足かもしれませんが、もしご存知でしたら教えて下さい。 ツリービューでルートのノードを軽く2回クリックすると、エクスプローラーを閉じる時のように、ツリーが閉じますが、これを閉じないようにする方法はないでしょうか? 宜しくお願い致します。

  • C# ツリービューの使い方

    現在、Microsoft Visual C# 2008 Express Editionでプログラムを作成しているのですが、ツリービューの使い方がよくわかりません。 具体的には、ツリービューとリストビューを左右に並べて、ツリービューのノードをクリックしたときに、その子ノードをリストビューに表示したいと考えています。 そこで、 ツリービューのNodeMouseClickイベントで foreach ( TreeNode child in this.treeView1.SelectedNode.ChildNodes ) { //リストにノードを表示する } と記述したのですが、 「'System.Windows.Forms.TreeNode' に 'ChildNodes' の定義が含まれておらず、型 'System.Windows.Forms.TreeNode' の最初の引数を受け付ける拡張メソッドが見つかりませんでした。using ディレクティブまたはアセンブリ参照が不足しています。」 というエラーが発生しました。 これを解決するにはどうすればいいのでしょうか?また、私が実装しようと考えている機能を、ツリービューとリストビューを併用した方法以外でより効率的にかけたりしますか? C#に詳しい人、回答よろしくお願いします。

  • ツリービューで、画像管理したいのですが・・・・

    ツリービューで、画像や、テキストをを管理したいのですが、 ツリービューのノードに画像や、テキストを入れることが出来るのでしょうか? ツリービューのノードをクリックして選択した場合、 ピクチャーボックスやテキストボックスに、画像やテキストを表示したいのですが、 どうすればいいのか教えて下さい・・・お願いします。

このQ&Aのポイント
  • お使いのブラザー製品、DCP-J926Nでレーベル印刷ができなくなってしまった問題について相談させてください。
  • パソコンやスマートフォンのOSは何で、どのような接続方法で使用されていますか?また、関連するソフトやアプリはありますか?
  • また、電話回線の種類も教えていただけますか?ご報告いただいた情報をもとに、お困りの原因や解決策をご提案させていただきます。
回答を見る

専門家に質問してみよう