ボタンが押されたときにピクチャーボックスのスクロールバーを移動するにはどうすればよいですか?
flowLayoutPanel(Dock:なし、AutoSize:false、AutoScroll:true)があり、その上にPictureBox(Dock:なし、SizeMode:AutoSize)を配置しました。大きな画像(9000x6315px)をPictureBoxにロードして、スクロールバーが表示され、地図をスクロールできるようにしました。しかし..マウスでのみ。ボタンが押されたときに、コードを使用してPictureBoxをスクロールするにはどうすればよいですか?
問題は、YouTubeのこのビデオ(3分)でよりよく見え、私が何を意味するのかをよりよく理解できるようになります:
Embarcadero Rad Studioでは、次のように書くことができます。
ScrollBox1->HorzScrollBar->Position=500;
ScrollBox1->VertScrollBar->Position=500;
VSで可能ですか?
ありがとうございました!
このコード(FlowLayoutPanelの名前を挿入)を使用して、フォームに一時的なボタンを追加します。
Console.WriteLine(flowLayoutPanel1.AutoScrollPosition.ToString());
ズームした地図を希望の位置までスクロールして、ボタンをクリックします。
出力例:
{X=-146,Y=-164}
それらの値が何であれ、あなたはそれらの反対を保存したいと思います。プロセスを繰り返し、必要なすべての位置を書き留めます。
これで、FlowLayoutPanelのAutoScrollPositionをこれらのポイントのいずれかに設定でき、そこでスクロールします。たとえば、それが「B1」ボタンの目的のポイントである場合:
private void B1_Click(object sender, EventArgs e)
{
Point pt = new Point(146, 164);
flowLayoutPanel1.AutoScrollPosition = pt;
}
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加