• ベストアンサー

TreeViewの内容を出力する方法

VB6.0でコントロールTreeViewを使って、 親子関係を持つデータをツリー表示する フォームを作っています。 TreeViewに表示された内容をビットマップに出力 したいのですが、いい方法が見つかりません。 PrintFormメソッドでフォーム全体をPDF形式で出力 させることは出来たのですが、ツリー情報が多岐に 渡る場合、情報が欠けてしまいます。 出来ればフォーム全体ではなく、ツリーの内容を全て出力させたいです。 ビットマップが無理ならば他の方法でも構わないので ご存知の方がいましたら是非教えて下さい。

noname#139383
noname#139383

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

  • ベストアンサー
回答No.1

まずビットマップですが、表示している部分以外の出力は、無理でしょう。 データの出力にしても、TreeViewはそんな機能を持っていないので、ゴリゴリとコードで書いて、出力するしかないと思うのですが。。。 ノードの階層分だけインデントさせてテキスト出力するとか、EXCELシートにインデントの分だけ、セルをAからBに、BからCにずらして出力とか、、

関連するQ&A

  • TreeViewについて

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

  • TreeViewでToolTipTextを表示しない方法

     VB6.0でTreeViewコントロールを使ってプログラミングしています。 このとき、TreeViewのノード上にカーソルを持っていくと、ToolTipTextが 自動的に表示されます。このToolTipTextの表示を禁止する方法を教えて ください。

  • TreeViewの再表示のちらつきをなくす方法

    お世話になっております。 VB2005でWinアプリ開発中です。 テキストボックスに条件を入力し、ボタンを押下すると、 TreeViewに該当データのノードを設定し、 ノードを展開した状態で表示する処理があります。 ノードが展開表示されている状態で、ボタンを押下し 新しい情報を再表示すると、 ノードが折りたたまれて展開されたというような動きが見えてしまいます。 SuspendLayout/ResumeLayoutを入れてみたのですが、変化無しでした。 ノードが展開された状態で、パッと再表示するには、 どのようにすればよいのでしょうか? よろしくお願いします!

  • VB2005 TreeViewの任意ノード選択

    お世話になっております。 VB2005でWinアプリを開発中です。 ルートノードは1つで、 そこから子、孫、ひ孫・・・と階段状になるTreeViewを作っています。 親   L子      L孫         Lひ孫             ・・・・ このようなツリーに対し、プログラムで任意のノードを選択状態にしたいのですが、 ノードの名称などで一発で指定する方法はありますでしょうか?? 上の例で、「孫」を選択状態にしたい場合、 TreeView1.SelectedNode = TreeView1.Nodes(0).Nodes(0).Nodes(0) と書けば、できることはできるのですが。 他にもっとよい方法があるはずと思うのですが、見つけられませんでした。 VB6.0なら、下記に方法があったのですが・・・ http://oshiete1.goo.ne.jp/qa732490.html よろしくお願いします。

  • APIの印刷設定について

    VB6.0の印刷について質問です。 現在フォームをPrintformメソッドをつかって印刷しているのですが フォームの幅サイズが大きすぎて用紙一枚に収まらずにいます。 用紙を横向きに印刷したら収まるのですが現在のPrintformではそこまでの設定ができないのでどうするか悩んでいます。 APIなどで横向き印刷などの設定は可能ですか? 可能ならば簡素でも結構ですので教えてください><

  • VB2005でフォームに取り込んだデータをCSVファイルを出力したい

    VB2005環境、DBはSQLサーバです。 VB2005でフォームに取り込んだデータをCSVファイルで出力する 機能を付けたいと考えています。 現状は、SqlDataAdapterのFillメソッドでDBから取得したデータをWindowsフォーム上に出力する機能を持っています。 その出力したデータをクリック一つでCSVファイルとして出力したい と考えています。 かなり調べたのですが出来ませんでした。 どなたかご教授よろしくお願いします。

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

    VB2005環境です。 TreeViewコントロールを作成し、ノードごとにクリックイベントを 追加して、タブコントロールを呼び出すようにしたいと考えています。 (親ノードをクリックしたら、親ノード用のタブコントロールが 画面に表示され、さらに子ノードAをクリックすると、ノードA用の タブコントロールが表示される、ノードBをクリックすると…という具合に)。 NodeMouseClickイベントを使えば良いのかとは思うのですが、クリックイベントが 子ノード各々ごとに取得できず困っています。 やり方を教えていただけないでしょうか? 更に、そこから各々専用のタブコントロールを呼び出す方法も 教えていただけるとありがたいです。 よろしくお願いします。

  • TreeViewの制御について

    ASP.NET2.0、VB.NETでWebアプリを開発しております。 現在、TreeViewコントロールを用いたマスタページに各コンテンツページを配置しています。 詰まっている箇所は二つです。 (1)マスターページ内のLoad処理で動的にノードを追加しているのですが、 各コンテンツページ呼び出し時に再生成されてしまい、メニューの展開が初期表示時に戻ってしまいます。 どうにか、展開情報を変更しない方法や、展開情報の保持、再現などできる方法はありませんでしょうか。 (2)コンテンツページのボタン押下で、メニューを選択できないようにし、 ボタン押下の処理終了時にメニューを復元することはできないでしょうか。 メニューの制御はできればEnabled(disabled)制御がいいのですが・・・ 恐れ入りますが、宜しくお願い致します。

  • VB.net TreeViewコントロール

    VB.net(2010 Express)でTreeViewコントロールを使用し、子ノードと子ノードの間にドラックアンドドロップする際に線を表示したいのですが、どのようにすれば良いのか分かりません。 単純に子ノードのドラッグアンドドロップはできるのですが、子ノード同士の間に線を表示する方法が分からずにハマっています!! 添付しました画像の様な線を表示できる方法など分かる方がいましたら、お力をお貸しください。 宜しくお願い致します。

  • BeforeExpandのイベント作成方法

    いつもお世話になっています。 C#をはじめて3日目の初心者です。 C#でツリーコントロールをしようしてディレクトリツリーを作成しています。 ノードを展開しようとしているときに発生するイベントが「BeforeExpand」であることまで調べられたんですが、「TreeView」イベントから「BeforeExpand」を作成する方法がわかりません。。。 フォームをダブルクリックするとForm1_Loadのコードが自動で作成されますが、「TreeView」に対して何かをすればできると思っています。。。 ご存知の方よろしくお願いします。

専門家に質問してみよう