ツリービューコントロールのスクロールバーの表示位置を設定するには?

解決


とわ  2004-06-09 02:02:55  No: 113778

現在、ツリービューコントロールを使用しており、
表示されるデータの件数が多い場合には縦スクロールが、
横幅がツリービューよりも大きい場合には横スクロールバーが
表示されるようになっております。

画面の初期表示時に縦のスクロールバーも横のスクロールバーも表示される場合に
両方のスクロールバーが中途半端な位置になって表示されてしまいます。
(縦のスクロールバーは一番上とくっついていない。
横のスクロールバーは一番左とくっついていない。)

縦スクロールに関してはWin32APIのWM_MOUSEWHEELを使って
一番上に設定されて表示されるようになったのですが、
(こちらの掲示板の「リストビューのスクロール部を表示するには? 」
という質問に対する回答を参考にさせてもらいました。)
横のスクロールバーを左に設定して表示するにはどうしたらよろしいでしょうか?

お手数ですがよろしくお願いします。

(VB6.0 + Win2000)


とわ  2004-06-09 23:52:25  No: 113779

●報告
スクロールプロパティをはじめはFALSEにしておき、
ツリービューを作成し終わってからTRUEにすると期待通りの動作が行われました。

1.TreeView.Scroll = False

2.ツリービューの作成

3.TreeView.Scroll = True

4.スクロールバーが一番上と一番左に表示。


特攻隊長まるるう  2004-06-10 00:20:09  No: 113780

よく分からなかったんで書込みしなかったけど、表示の最後に

Me.TreeView1.Nodes.Item(1).Selected = True

とかしても解決したりしますか?(汗)


towa  2004-06-10 01:23:17  No: 113781

>よく分からなかったんで書込みしなかったけど

トラブル状況、分かりづらかったかもしれません(^_^)
よく言われます。説明下手って・・・

試してみましたが、はじめと状況が変わらないようです。
う〜ん、駄目みたいです・・・


特攻隊長まるるう  2004-06-10 01:51:05  No: 113782

そうですかー。ウチの環境とは微妙に何か違うみたいですね。
Win2000+VB6ではあるんですが…
ウチの環境だと、Node を選択するとそこにスクロールバーが
移動するので Expanded = True する時点で微妙な位置にずれます。
…でルートノードを選択してやれば一番上と一番左に表示
されました。
ま。ご報告まで。


とわ  2004-06-10 02:06:23  No: 113783

そうですね。
どこかが違うのかもしれませんね。

ありがとうございました。

(^^)/~~


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加