private void ShowSmallImages() { string[] pictures = ImageTool.GetAllImagePath(MainConfig.ShowFolderPath); int pictureCount = pictures.Length; int padding = 2; int columnCount = MainConfig.PanelMainSize.Width / MainConfig.ImageSize.Width; int rowCount = (pictureCount % columnCount == 0) ? pictureCount / columnCount : (pictureCount / columnCount) + 1; for (int row = 0; row < rowCount; row++) { for (int column = 0; column < columnCount; column++) { int index = row * columnCount + column; // 图片下标 PictureBox pictureBox = new PictureBox(); pictureBox.SizeMode = PictureBoxSizeMode.Zoom; pictureBox.Size = MainConfig.ImageSize; if (index >= pictureCount) { return; } //pictureBox.Load(pictures[index]); //pictureBox.Image = Image.FromFile(pictures[index]); //FileStream fs = new FileStream(pictures[index], FileMode.Open); //Bitmap bm = new Bitmap(fs); //fs.Dispose(); //pictureBox.Image = bm; //pictureBox.Image = ImageTool.GetImage(pictures[index]); pictureBox.Image = ImageTool.GetThumbnailsImage(pictures[index], MainConfig.ImageSize); pictureBox.Tag = pictures[index]; Point pictureLoction = new Point() { X = pictureBox.Width * column + padding * (column + 1), Y = pictureBox.Height * row + padding * (row + 1) }; pictureBox.Location = pictureLoction; pictureBox.DoubleClick += pictureBox_DoubleClick; pictureBox.MouseDown += pictureBox_MouseDown; panelMain.Controls.Add(pictureBox); } } }
private void ShowSmallImages() { Size imageSize = new Size(16 * 10, 9 * 10); string[] pictures = ImageTool.GetAllImagePath(@"F:\\- Test\\Bing"); int pictureCount = pictures.Length; int padding = 2; int columnCount = panelMain.Width / imageSize.Width; int rowCount = (pictureCount % columnCount == 0) ? pictureCount / columnCount : (pictureCount / columnCount) + 1; for (int row = 0; row < rowCount; row++) { for (int column = 0; column < columnCount; column++) { int index = row * columnCount + column; // 图片下标 PictureBox pictureBox = new PictureBox(); pictureBox.SizeMode = PictureBoxSizeMode.Zoom; pictureBox.Size = imageSize; if (index >= pictureCount) { return; } //pictureBox.Image = ImageTool.LoadImage(pictures[index]); pictureBox.Image = ImageTool.GetThumbnailsImage(pictures[index], imageSize); pictureBox.Tag = pictures[index]; Point pictureLoction = new Point() { X = pictureBox.Width * column + padding * (column + 1), Y = pictureBox.Height * row + padding * (row + 1) }; //MessageBox.Show(pictureBox.Tag.ToString()); pictureBox.Location = pictureLoction; //Thread t = new Thread(new ParameterizedThreadStart(AddControol)); //t.Start(); panelMain.Controls.Add(pictureBox); Refresh(); } } }
private void ShowSmallImages() { string[] pictures = ImageTool.GetAllImagePath(MainConfig.ShowFolderPath); int pictureCount = pictures.Length; int padding = 2; int columnCount = splitContainer1.Panel1.Width / MainConfig.ImageSize.Width; int rowCount = (pictureCount % columnCount == 0) ? pictureCount / columnCount : (pictureCount / columnCount) + 1; for (int row = 0; row < rowCount; row++) { for (int column = 0; column < columnCount; column++) { int index = row * columnCount + column; PictureBox pictureBox = new PictureBox(); pictureBox.SizeMode = PictureBoxSizeMode.Zoom; pictureBox.Size = MainConfig.ImageSize; if (index >= pictureCount) { return; } //pictureBox.Image = Image.FromFile(pictures[pictureIndex]); //pictureBox.Load(pictures[index]); //pictureBox.Image = ImageTool.GetImage(pictures[index]); pictureBox.Image = ImageTool.GetThumbnailsImage(pictures[index], MainConfig.ImageSize); pictureBox.Tag = pictures[index]; Point pictureLoction = new Point() { X = padding * (column + 1) + pictureBox.Width * column, Y = padding * (row + 1) + pictureBox.Height * row }; pictureBox.Location = pictureLoction; pictureBox.Click += pictureBox_Click; pictureBox.DoubleClick += pictureBox_DoubleClick; panelSmallImages.Controls.Add(pictureBox); } } pictureBoxLarge.Load(pictures[0]); ShowImageInfo(Path.GetFullPath(pictures[0])); }
private void CreateListView() { string[] pictures = ImageTool.GetAllImagePath(MainConfig.ShowFolderPath); listView = new System.Windows.Forms.ListView(); listView.Dock = DockStyle.Fill; //listView1.LabelEdit = true; listView.View = View.Details; listView.AllowColumnReorder = true; listView.CheckBoxes = true; listView.FullRowSelect = true; listView.GridLines = true; // Width of -2 indicates auto-size. listView.Columns.Add("序号", -2, HorizontalAlignment.Left); listView.Columns.Add("文件名", 100, HorizontalAlignment.Left); listView.Columns.Add("分辨率", -2, HorizontalAlignment.Center); listView.Columns.Add("大小", -2, HorizontalAlignment.Center); listView.Columns.Add("文件路径", -2, HorizontalAlignment.Left); listView.Items.Clear(); // Create three items and three sets of subitems for each item. for (int i = 0; i < pictures.Length; i++) { ListViewItem item = new ListViewItem((i + 1).ToString()); ImageListInfo imageInfo = GetImageInfo(Path.GetFullPath(pictures[i])); item.SubItems.Add(imageInfo.FileName); item.SubItems.Add(imageInfo.ImageSize.Width.ToString() + " x " + imageInfo.ImageSize.Height.ToString()); item.SubItems.Add(imageInfo.FileSize.ToString()); item.SubItems.Add(imageInfo.FillFullName); listView.Items.Add(item); } listView.ColumnClick += new ColumnClickEventHandler(ListView_ColumnClick); listView.ItemSelectionChanged += new ListViewItemSelectionChangedEventHandler(listView_ItemSelectionChanged); listView.ItemChecked += new ItemCheckedEventHandler(listView_ItemChecked); panelListView.Controls.Add(listView); // listview根据列名自动调整列宽 //listView1.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize); listView.ListViewItemSorter = imageListViewSort; }
private void LoadSmallImages(string path, Size panelSize, Size imageSize) { string[] pictures = ImageTool.GetAllImagePath(path); int pictureCount = pictures.Length; int padding = 2; int columnCount = panelSize.Width / imageSize.Width; int rowCount = (pictureCount % columnCount == 0) ? pictureCount / columnCount : (pictureCount / columnCount) + 1; for (int row = 0; row < rowCount; row++) { for (int column = 0; column < columnCount; column++) { int index = row * columnCount + column; // 图片下标 PictureBox pictureBox = new PictureBox(); pictureBox.SizeMode = PictureBoxSizeMode.Zoom; pictureBox.Size = imageSize; if (index >= pictureCount) { return; } //pictureBox.Image = ImageTool.GetImage(pictures[index]); pictureBox.Image = ImageTool.GetThumbnailsImage(pictures[index], MainConfig.ImageSize); pictureBox.Tag = pictures[index]; Point pictureLoction = new Point() { X = pictureBox.Width * column + padding * (column + 1), Y = pictureBox.Height * row + padding * (row + 1) }; pictureBox.Location = pictureLoction; pictureBox.DoubleClick += pictureBox_DoubleClick; pictureBox.MouseDown += pictureBox_MouseDown; panelMain.Controls.Add(pictureBox); //Refresh(); } } }
private void ShowSmallImages() { string[] pictures = ImageTool.GetAllImagePath(MainConfig.ShowFolderPath); int pictureCount = pictures.Length; int padding = 2; int pictureHeight = panelSmallImage.Height - 17; int pictureWidth = pictureHeight * 16 / 9; for (int index = 0; index < pictureCount; index++) { PictureBox pictureBox = new PictureBox(); pictureBox.SizeMode = PictureBoxSizeMode.Zoom; pictureBox.Width = pictureWidth; pictureBox.Height = pictureHeight; //pictureBox.Image = Image.FromFile(pictures[index]); //pictureBox.Image = ImageTool.GetImage(pictures[index]); pictureBox.Image = ImageTool.GetThumbnailsImage(pictures[index], MainConfig.ImageSize); pictureBox.Tag = pictures[index]; //FileStream fs = new FileStream(pictures[cnt], FileMode.Open); //Bitmap bm = new Bitmap(fs); //fs.Dispose(); //pictureBox.Image = bm; Point pictureLoction = new Point() { X = padding * (index + 1) + pictureWidth * index, Y = 0 }; pictureBox.Location = pictureLoction; pictureBox.Click += smallPictureBox_Click; pictureBox.DoubleClick += pictureBox_DoubleClick; panelSmallImage.Controls.Add(pictureBox); } pictureBoxLarge.Image = Image.FromFile(pictures[0]); }
public void GetParentFile() { parentFilePath = ImageTool.GetAllImagePath(Path.GetDirectoryName(imgPath)).ToList(); }