Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/08/2010, 06:36
kansy
 
Fecha de Ingreso: septiembre-2008
Mensajes: 6
Antigüedad: 15 años, 8 meses
Puntos: 0
Error con un combobox

Buenas!

Mirad, estoy haciendo un Script que según las categorías que tenga seleccionadas en unas CheckBox me copiará un texto u otro en el portapapeles.

La cosa es, que esto lo quiero hacer en varios idiomas y por eso he añadido al principio del form un ComboBox con los idiomas correspondientes y según el que elija me coja los datos del .txt de una carpeta o de otra.

Parte del código es este:

Código:
 Dim Idioma As String

        If ComboBox1.SelectedItem = 0 Then
            MsgBox("Please select a Language", 0, "Error")
        Else
            If ComboBox1.SelectedItem = -1 Then
                Idioma = "ES"
            End If
            inicio = My.Computer.FileSystem.ReadAllText("C:\Documents and Settings\XXXX\Mis documentos\Visual Studio 2008\Projects\ClipperCreator\ClipperCreator\My Project\" & Idioma & "\header.txt") & vbCrLf & vbCrLf
            If CheckBox12.Checked Then
                final = My.Computer.FileSystem.ReadAllText("C:\Documents and Settings\XXXX\Mis documentos\Visual Studio 2008\Projects\ClipperCreator\ClipperCreator\My Project\"/ Idioma & "\Footer_stilllocked.txt") & vbCrLf & vbCrLf
            Else
                final = My.Computer.FileSystem.ReadAllText("C:\Documents and Settings\XXXX\Mis documentos\Visual Studio 2008\Projects\ClipperCreator\ClipperCreator\My Project\"& Idioma & "\Footer_notlocked.txt") & vbCrLf & vbCrLf
            End If
El problema viene que si ejecuto el programa y selecciono 1 idioma me dice:

"La conversión de la cadena "Spanish" en el tipo 'Double' no es válida."

Y me selecciona:
Código:
If ComboBox1.SelectedItem = 0 Then
en amarillo.

Los campos del Combobox son Spanish y English en este orden.

¿Alguna Idea?

Muchísimas gracias por adelantado.

Kansy

-------------------
EDITADO
-------------------

He cambiado
Código:
            If ComboBox1.SelectedItem = -1 Then
                Idioma = "ES"
            End If
por
Código:
            If ComboBox1.SelectedItem = "Spanish" Then
                Idioma = "ES"
            End If
y funciona.

Pero para que funcione he tenido que eliminar el
Código:
If ComboBox1.SelectedItem = 0 Then
            MsgBox("Please select a Language", 0, "Error")
        Else
porque esa parte me seguía dando error.

----------------
EDITADO 2
----------------

Bien, eso lo he solucionado de la siguiente manera:

Código:
       If ComboBox1.SelectedItem = "Spanish" Then
            Idioma = "ES"
        ElseIf ComboBox1.SelectedItem = "English" Then
            Idioma = "EN"
        ElseIf ComboBox1.SelectedItem = "French" Then
            Idioma = "FR"
        ElseIf ComboBox1.SelectedItem = "German" Then
            Idioma = "GE"
        ElseIf ComboBox1.SelectedItem = "Italian" Then
            Idioma = "IT"
        ElseIf ComboBox1.SelectedItem = "Polish" Then
            Idioma = "POL"
        ElseIf ComboBox1.SelectedItem = "Portuguese" Then
            Idioma = "PRT"
        End If

        If ComboBox1.SelectedIndex < 0 Then
            MsgBox("Select a Language", 0, "Error")
        Else
Añado todo esto antes del código que deseo que se ejecute y funciona. :)

Última edición por kansy; 10/08/2010 a las 07:45 Razón: Edit 2 added