按下按钮后如何移动图片框的滚动条?
我有flowLayoutPanel(停靠:无,AutoSize:false,AutoScroll:true),我在其上放置了一个PictureBox(停靠:无,SizeMode:AutoSize)。我将一个大图像(9000x6315px)加载到PictureBox中,因此滚动条可见,并允许我滚动地图。但是..只能用鼠标。按下按钮后,如何使用代码滚动PictureBox?
在YouTube上的这段视频中,问题更明显(持续3分钟),它将使您更好地理解我的意思:
在Embarcadero Rad Studio中,我可以这样写:
ScrollBox1->HorzScrollBar->Position=500;
ScrollBox1->VertScrollBar->Position=500;
VS中有可能吗?
谢谢!
答案 0 :(得分:0)
使用以下代码(插入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;
}