質問に入る前に、セットアップについて説明させてください。
最初:実行時に生成されるビットマップを保持する PictureBox があります。このビットマップの幅は異なる場合がありますが、高さは常に同じです。
2 番目: PictureBoxes はスクロールをサポートしていないため、PictureBox をパネルにドッキングしています。最初は、パネルの自動スクロール機能を使用していましたが、この記事で PictureBoxes にはサイズ制限があることを発見した後、使用をやめました。また、代わりに小さな PictureBox を使用して、画像全体ではなく表示する必要があるものだけを描画する方がよいことも学びました。
3 番目:それで、HScrollBar を追加しました。スクロールバーの最大値をビットマップの長さに設定しようとしましたが、ご覧のとおり、自動スクロール機能を使用すると、Windows が配置するものよりもスクローラーのサイズがはるかに小さくなります。
私の質問は、スクローラーのサイズの背後にある計算は何ですか?カスタムスクロールバーでそれをどのようにエミュレートしますか?
質問が不明確な場合はお知らせください。よりわかりやすくするために最善を尽くします。そして、あなたの助けを前もってありがとう!