日期:2014-05-19  浏览次数:21180 次

关于panel上的自动滚动条
在panel上动态画图,想让滚动条随着画的图也自动滚动,使最近画的一直可以看到!
比如,每隔10秒画一线段,每个线段首尾相连,当线段超过panel的宽度时滚动条自动向后滚动,使最后画的线段能被看到!

------解决方案--------------------
我也关注一下
帮你顶一顶
------解决方案--------------------
在窗体上放panel1,及Button1,添加如下的代码试试就知道了:
public partial class Form1 : Form
{
private Size dispSize = Size.Empty;
public Form1()
{
InitializeComponent();
dispSize = this.panel1.Size;
}

private void button1_Click(object sender, EventArgs e)
{
dispSize.Width += 10;
dispSize.Height += 10;
this.panel1.AutoScrollMinSize = dispSize;
}

private void panel1_Paint(object sender, PaintEventArgs e)
{
e.Graphics.DrawString( "测试字符串 ", this.panel1.Font, SystemBrushes.ControlText, this.panel1.AutoScrollPosition);
}
}

------解决方案--------------------
自己加入两个滚动条,设置滚动条的最大值为你的图像宽度,然后设置当前值即可

爱怎么滚就怎么滚