none
Ayuda!! RRS feed

  • Pregunta

  •  

    Hola, tengo este codigo que me permite escribir en un textbox el nombre de una imagen que tengo en una carpeta y mostrarla en un piturebox... SI ESCRIBO ALGO EN EL TEXTBOX QUE NO ESTA EN LA CARPETA ¿COMO PUEDO EVITAR EL ERROR? O ¿COMO LIMITO QUE SOLO SE PUEDAN BUSCAR LOS ARCHIVOS DE LA CARPETA? 

    POR FAVOR AYUDA!! 

    Private Sub Btn_Search1_Click(sender As Object, e As EventArgs) Handles Btn_Search1.Click
            Dim MLI As String
            MLI = TextBox1.Text

            If MLI = "" And RadioButton_JB.Checked = False And RadioButton_PC.Checked = False Then

                MsgBox("Write a valid MLI")

            ElseIf MLI = "" And RadioButton_JB.Checked = True And RadioButton_PC.Checked = True Then

                MsgBox("Write a valid MLI")


            ElseIf MLI <> "" And RadioButton_JB.Checked = False And RadioButton_PC.Checked = False Then

                PB_1.Image = Image.FromFile("L:\PSEC\SYSTEM TEAM\PASM\MIIA\7FA.05\INTERFERENCE\" + MLI + ".PNG")
                PB_2.Image = Image.FromFile("L:\PSEC\SYSTEM TEAM\PASM\MIIA\7FA.05\INTERFACE\" + MLI + ".PNG")
                PB_3.Image = Image.FromFile("L:\PSEC\SYSTEM TEAM\PASM\MIIA\7FA.05\DESCRIPTION\" + MLI + ".PNG")



            ElseIf MLI <> "" And RadioButton_JB.Checked = True Then ' Busqueda de JB por MLI

                PB_1.Image = Image.FromFile("L:\PSEC\SYSTEM TEAM\PASM\MIIA\7FA.05\JB_empty\" + MLI + ".PNG")
                PB_2.Image = Image.FromFile("L:\PSEC\SYSTEM TEAM\PASM\MIIA\7FA.05\JB\" + MLI + ".PNG")
                PB_3.Image = Image.FromFile("L:\PSEC\SYSTEM TEAM\PASM\MIIA\7FA.05\DESCRIPTION\" + MLI + ".PNG")


            ElseIf MLI <> "" And RadioButton_PC.Checked = True Then  'Busqueda de PC por MLI 

                PB_1.Image = Image.FromFile("L:\PSEC\SYSTEM TEAM\PASM\MIIA\7FA.05\PC_empty\" + MLI + ".PNG")
                PB_2.Image = Image.FromFile("L:\PSEC\SYSTEM TEAM\PASM\MIIA\7FA.05\PC\" + MLI + ".PNG")
                PB_3.Image = Image.FromFile("L:\PSEC\SYSTEM TEAM\PASM\MIIA\7FA.05\DESCRIPTION\" + MLI + ".PNG")

            End If


        End Sub
    End Class

    miércoles, 29 de noviembre de 2017 16:17

Respuestas

  • Entiendo que lo que quieres hacer es validar que el fichero de imagen existe antes de cargarlo. Para eso solo tienes que usar File.Exists(RutaDelFichero) que te va a devolver True si existe el fichero en RutaDelFichero.

    Debes incluir      Imports System.IO

    Por ejemplo:

    If File.Exists("L:\PSEC\SYSTEM TEAM\PASM\MIIA\7FA.05\INTERFERENCE\" + MLI + ".PNG") Then
        PB_1.Image = Image.FromFile("L:\PSEC\SYSTEM TEAM\PASM\MIIA\7FA.05\INTERFERENCE\" + MLI + ".PNG")
    End If

    Puedes crearte una función a la que le pases como parámetros el objeto PictureBox y la ruta de la imagen y se encargue de la validación y la carga:

    Private Sub CargaImagen(PB As PictureBox, RutaFicheroImagen As String)
        If File.Exists(RutaFicheroImagen) Then
            PB.Image = Image.FromFile("L:\PSEC\SYSTEM TEAM\PASM\MIIA\7FA.05\INTERFERENCE\" + MLI + ".PNG")
        End If
    End Sub

    Y hacer llamadas del tipo

    CargaImagen PB_1, "L:\PSEC\SYSTEM TEAM\PASM\MIIA\7FA.05\INTERFERENCE\" + MLI + ".PNG"

    CargaImagen PB_2, "L:\PSEC\SYSTEM TEAM\PASM\MIIA\7FA.05\INTERFACE\" + MLI + ".PNG"

    ...

    Saludos, Javier J


    miércoles, 29 de noviembre de 2017 16:37