Получение изображений из файла и добавление их в массив - PullRequest
1 голос
/ 13 января 2012

Я пытаюсь создать программу, которая проверяет, идет ли кто-то на Happy Hour.Если нет, в нем перечислены те, кто не является, и помещает их фотографию рядом с их именем.

Я могу добиться всего, кроме как получить изображения локально и сохранить их в массиве (который будет добавлен в pictureArray(i)).

(Вы можете видеть закомментированные разделы, где я пытался получить изображения ...)

Есть идеи?

Public Class Form1
Dim ITLPList() As String = {"Name 1", "Name 2", "Name 3", "Name 4", "Name 5", "Name 6"}
'  Dim imageList As New ImageList
' Dim fileSteam As New System.IO.FileStream(sFileName, System.IO.FileMode.Open)
' Dim img As Image
' Dim sFileName As String = "C:\Users\turcotd\Desktop\ITLPers\itlp1.jpg"

Dim itlpTally() As String
Dim labelArray(5) As Label
Dim pictureArray(5) As PictureBox

Dim intTally As Integer
Dim i As Integer = 0

Public itlpIndex As Integer = 0

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

    itlpName.Text = ITLPList(0)
    labelArray(0) = lblPerson0
    labelArray(1) = lblPerson1
    labelArray(2) = lblPerson2
    labelArray(3) = lblPerson3
    labelArray(4) = lblPerson4

    pictureArray(0) = picITLP0
    pictureArray(1) = picITLP1
    pictureArray(2) = picITLP2
    pictureArray(3) = picITLP3
    pictureArray(4) = picITLP4

End Sub

Private Sub btnYes_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnYes.Click

    If (i < 6) Then
        itlpName.Text = ITLPList(i)
        i = i + 1

    End If
End Sub

Private Sub btnNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNo.Click

    If (i < 6) Then
        'Names
        itlpName.Text = ITLPList(i)
        intTally = intTally + 1
        lblTally.Text = intTally
        labelArray(i).Text = ITLPList(i)

        'Images
        '    img = Image.FromStream(fileSteam)
        '   fileSteam.Close()
        '  imageList.Images.Add(img)
        '  pictureArray(i).Image = imageList.Images.Item(0)
        '  img.Dispose()

        ' img = Image.FromFile(sFileName)

        i = i + 1
    End If
    itlpName.Text = ITLPList(i)
End Sub
End Class

Ответы [ 2 ]

1 голос
/ 13 января 2012

Вы можете получить все файлы jpg в каталоге как FileInfo следующим образом:

Dim dir = New IO.DirectoryInfo("C:\Users\turcotd\Desktop\ITLPers")
Dim images = dir.GetFiles("*.jpg", IO.SearchOption.AllDirectories).ToList
0 голосов
/ 13 января 2012

Загрузка файла в PictureBox из файла - очень простая операция:

picITLP0.Image = Image.FromFile("C:\Users\turcotd\Desktop\ITLPers\itlp1.jpg")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...