private void Form1_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Enter) { CurrentFile.CopyTo(Path.Combine(DestinationDir.FullName, CurrentFile.Name)); NextImage(); } else if (e.KeyCode == Keys.Right) { NextImage(); } else if (e.KeyCode == Keys.Left) { if (LastImages.Any()) { ImagesLeft.Push(LastImages.Pop()); } if (LastImages.Any()) { ImagesLeft.Push(LastImages.Pop()); } NextImage(); } }
void NextImage() { while (true) { if (!ImagesLeft.Any()) { Console.WriteLine("All done"); Close(); break; } CurrentFile = ImagesLeft.Pop(); CurImgN++; Image img; try { img = Image.FromFile(CurrentFile.FullName); } catch (Exception e) { Console.WriteLine(e); continue; } this.Text = string.Format("ImgBrowseCopy - '{0}' - {1}/{2} - {3:0.##}%", CurrentFile.Name, CurImgN, NImages, CurImgN * 1.0 / NImages * 100); if (img.Width < MinWidth || img.Height < MinHeight) { continue; } LastImages.Push(CurrentFile); var old = pictureBox1.Image; pictureBox1.Image = img; if (old != null) { old.Dispose(); } break; } }