如何使用pictureBox和hscrollbar在图像之间滚动图像?

时间:2015-05-28 16:23:09

标签: c# .net winforms

在Form1中,我在设计师中有一个pictureBox。 然后我在tick事件中添加了一个计时器:

private void timer1_Tick(object sender, EventArgs e) {
  if (savedall == true) {
    for (int i = 0; i < filePaths.Length; i++) {

    }
  }
}

hscrollbar滚动事件:

private void hScrollBar1_Scroll(object sender, ScrollEventArgs e) {

}

当savedall为true时,我希望能够在filePaths中的所有图像之间滚动并显示pictureBox中的每个图像。

1 个答案:

答案 0 :(得分:0)

您可以准备图像列表和scrollbar imgScroller,如下所示:

List<string> imageList = new List<string>();

imageList = Directory.GetFiles("d:\\", "*.jpg").ToList();

imgScroller.Minimum = 0;
imgScroller.Value = 0;
imgScroller.Maximum = imageList.Count - 1;
imgScroller.SmallChange = 1;
imgScroller.LargeChange = 1;

代码Scroll这样的事件:

private void imgScroller_Scroll(object sender, ScrollEventArgs e)
{
    if (scrolledPB.Image != null) scrolledPB.Image.Dispose();

    int index =  (int)imgScroller.Value;
    scrolledPB.Image = Image.FromFile(imageList[index]);
    someLabel.Text = "Displaying image " + index + " of " + imageList.Count - 1;
}

不确定计时器在做什么,或者您是否已经拥有文件路径..