1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88
| Imports System.IO
Imports System.Drawing.Imaging
Imports System.Text
Public Class VisuAffiches
Dim gpath As String
Dim unique As Long = Now.Ticks
Public Shared ftype As String = ".jpg.jpeg"
Public Shared imgPaths() As String
Dim ipath As String
Dim tm As String
Private Sub LstFill(ByVal ipath As String)
ipath = "C:\AffichesModifs"
Dim xx As Integer = 0
Try
Dim ist As String
Dim i As Integer = 0
Dim opt As System.IO.SearchOption = System.IO.SearchOption.TopDirectoryOnly
Me.Cursor = Cursors.WaitCursor
With lstvItem
.BeginUpdate()
.Clear()
End With
imglst.Images.Clear()
ReDim imgPaths(0)
For Each ist In Directory.GetFiles(ipath, "*", opt)
If ftype.Contains(Path.GetExtension(ist)) = True Then
ReDim Preserve imgPaths(i)
imgPaths(i) = ist
Select Case Path.GetExtension(ist)
Case Is = ".jpg", ".jpeg"
imglst.Images.Add(My.Resources.jpg)
End Select
With lstvItem
.Items.Add(Path.GetFileNameWithoutExtension(ist), i)
.Items.Item(i).SubItems.Add(ist)
End With
xx += 1
i += 1
End If
Next
Me.Cursor = Cursors.Arrow
lstvItem.EndUpdate()
Application.DoEvents()
If Me.lstvItem.Items.Count <> 0 Then
For i = 0 To imglst.Images.Count - 1
Dim img As Image = Image.FromFile(imgPaths(i))
Dim w As Double = img.Width / 5
Dim h As Double = img.Height / 5
imglst.Images.Item(i) = Image.FromFile(imgPaths(i)).GetThumbnailImage(w, h, Nothing, IntPtr.Zero)
ListBox1.Items.Add(imgPaths(i))
lstvItem.RedrawItems(i, i, True)
Application.DoEvents()
Next
End If
Catch ex As Exception
End Try
If lstvItem.Items.Count <> 0 Then
End If
End Sub
Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton1.Click
Close()
End Sub
Private Sub VisuAffiches_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
LstFill(ipath)
End Sub
Private Delegate Sub UpdateProgressBarDelegate(ByVal progress%)
Private Sub UpdateProgressBarMethod(ByVal progress%)
If Not progress > 100 Then
Me.ToolStripProgressBar1.Value = progress
End If
End Sub
Private Sub BackgroundWorker1_DoWork(ByVal sender As Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
LstFill(ipath)
End Sub |
Partager