Member 13974630 Ответов: 1

Путь изображения в элемент управления PictureBox Б. чистые


у меня есть программа с кнопкой поиска, полем изображения и текстовым полем для пути Изображения файла, я хочу найти номер счета-фактуры и показать фотографии и путь изображения в текстовом поле, но код не будет обрабатываться, можете ли вы помочь мне с этими кодами??

Что я уже пробовал:

Private Sub search_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles search.Click
        command.Connection = con
        Try
            str = "Select * from datagambar Where NoFaktur = @nofaktur"
            command = New OleDbCommand(str, con)
            command.Parameters.Add("@nofaktur", OleDbType.VarChar).Value = nofaktur.Text
            command.ExecuteNonQuery()
            Call showimage1()
            command.Dispose()
            con.Close()
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
    End Sub

    Sub showimage1()
        PictureBox1.Visible = True
        PictureBox1.Image = Image.FromFile("G:\Aplikasi\Photo\Faktur Invoice")
    End Sub

1 Ответов

Рейтинг:
1

Richard Deeming

ExecuteNonQuery предназначен для выполнения таких команд, как INSERT, UPDATE, или DELETE, которые не возвращают никаких данных.

Для выполнения SELECT запросите и прочитайте результаты, используйте то ExecuteReader метод[^] вместо.

Private Sub search_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles search.Click
    Using command As New OleDbCommand("SELECT * FROM datagambar WHERE NoFaktur = @nofaktur", con)
        command.Parameters.Add("@nofaktur", OleDbType.VarChar).Value = nofaktur.Text
        
        Try
            con.Open()
            
            Using reader As OleDbDataReader = command.ExecuteReader()
                If reader.Read() Then
                    Dim imagePath As String = reader.Field(Of String)("Your image path column name")
                    If String.IsNullOrEmpty(imagePath) Then
                        PictureBox1.Visible = False
                    Else
                        PictureBox1.Visible = True
                        PictureBox1.Image = Image.FromFile(imagePath)
                    End If
                    
                    ... Load other columns into the UI here ...
                    
                Else
                    ... No match: tell the user, and clear the UI here ...
                End If
            End Using
            
        Catch ex As System.Data.Common.DbException
            MsgBox(ex.Message)
        
        Finally
            con.Close()
        End Try
    End Using
End Sub