none
二つのテキストボックスのスクロールバーの連動 RRS feed

  • 質問

  • formにテキストボックスをマルチラインで二つつけてあります。
    text1         text2
    ------        --------
    |   |       |    |
    |   |       |    |
    ------        --------

    この二つのtextboxのうち一方をスクロール(スクロールバーは縦)するともう一方も連動して動くようにしたいのですが、どのようにすればよいのでしょうか?

    理由としては左側のテキストに項目が、右側のテキストにその内容が表示されている為同時スクロールがしたいのですが、どうかよろしくお願い致します

    開発環境はVisualStudio2008です。

    2009年3月5日 8:55

回答

  •  簡単に行うのは難しいでしょう。方針だけですが、WndProcをオーバーライドして、 WM_VSCROLL、SB_THUMBTRACK、SB_ENDSCROLL、WM_MOUSEWHEEL、SB_LINEUP、SB_LINEDOWN辺りを捕まえてGetScrollPosでスクロール位置を取得し、他方のTextBoxに対してSetScrollPosすればできるかもしれません。
    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://blogs.wankuma.com/trapemiya/
    • 回答としてマーク sk7474 2009年3月19日 8:46
    2009年3月6日 1:41
    モデレータ

すべての返信

  •  簡単に行うのは難しいでしょう。方針だけですが、WndProcをオーバーライドして、 WM_VSCROLL、SB_THUMBTRACK、SB_ENDSCROLL、WM_MOUSEWHEEL、SB_LINEUP、SB_LINEDOWN辺りを捕まえてGetScrollPosでスクロール位置を取得し、他方のTextBoxに対してSetScrollPosすればできるかもしれません。
    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://blogs.wankuma.com/trapemiya/
    • 回答としてマーク sk7474 2009年3月19日 8:46
    2009年3月6日 1:41
    モデレータ
  • こんにちは。中川俊輔 です。

    trapemiyaさん、回答ありがとうございます。

    yoshiさん、フォーラムのご利用ありがとうございます。
    その後いかがでしょうか?疑問は解決しましたか?

    有用な情報と思われたため、さtrapemiyaんの回答へ回答マークをつけさせていただきました。

    今後ともフォーラムをよろしくお願いします。
    それでは!
    マイクロソフト株式会社 フォーラム オペレータ 中川 俊輔
    2009年3月19日 9:08