Visual Basic - Manejar lineas de un txt (VB6)

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil
Val: 5
Ha aumentado su posición en 22 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Manejar lineas de un txt (VB6)

Publicado por Agustin (4 intervenciones) el 02/07/2018 22:42:24
Buenas foro, como estan? Traigo una consulta para una aplicacion de la facultad.
Estoy programando un convertidor de unidades, el cual tiene 3 categorias (Longitud, superficie y energia) y dentro de cada categoria 7 unidades. Y necesito programar usando archivos de texto (No puedo hacerlo de otra forma porque es lo que se me indico)

Tengo un archivo "factores.txt" donde estan las categorias, y este se carga en una combo al iniciar el programa.
Luego 3 archivos txt mas (Longitud, superficie y energia) que se cargan en 2 combos dependiendo de que categoria elija en el primer combo

Cada uno de esos 3 txt tienen esta forma:

1 Metros (m);
100 Centimetros (cm);
1000 Milimetros (mm);
0,001 Kilometros (km);
0,000621371 Millas (mi);
1,09361 Yardas (yd);
3,28083 Pies (ft);

La unidad "patron", metro en este caso, y cuando equivale en metros cada una de las otras unidades.

Mi problema viene a la hora de hacer el calculo, el valor que capta el Textbox1 (introducido por el usuario), pasarlo de la unidad del combo1 a la unidad del combo2.

Primero lo hice de una forma bastante simple, la cual era
If combo1.text = "Metros" and combo2.text = "centimetros" then labelResultado.caption textbox1 * 100

Funcionaba, pero se me ordeno hacerlo de otra forma, utilizando las lineas del txt para multiplicar mi variable..
Pero nose que sentencias usar ni como escribirlo en el codigo. Todo el resto lo puedo hacer, cargar los combo con las unidades del archivo y eso.. Pero no el calculo.

Alguien me puede dar una idea de como hacerlo? Gracias desde ya
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Andres Leonardo
Val: 3.117
Oro
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Manejar lineas de un txt (VB6)

Publicado por Andres Leonardo (1798 intervenciones) el 03/07/2018 00:57:10
Pues por lo que veo ... hay un espacio entre el valor... y su respectiva

prueba haciendo esto

Coloca dos combos y un txt ahora el tema es que siempre el texto (que dices que ya lo cargas debe tener la estrucura indicada )

Adicional el primer textbox es para poner la cantidad
El segundo combo es que te indicara como llenar el texto a combo 1

Combo 1 estan los datos.

Pd mi separador decimal es punto por lo que tuve que cambiar el tuyo que es coma pero si tu maquina es coma deberas cambiar ,,

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Private Sub Command1_Click()
Dim valor As Double
Dim valort As String
Dim x As Integer
x = InStr(1, Combo1.Text, " ")
valor = Val(Mid(Combo1.Text, 1, x - 1))
valort = Mid(Combo1.Text, x + 1, Len(Combo1.Text) - x)
 
MsgBox "La conversion de " & Combo2.Text & " a " & valort & " es : " & Val(Text1.Text) * valor
 
End Sub
 
Private Sub Form_Load()
'si tu separador decimal es , cambialo en estos valores 
Combo2.AddItem "Metros"
Combo1.AddItem "1 Metros (m)"
Combo1.AddItem "100 Centimetros (cm)"
Combo1.AddItem "1000 Milimetros (mm)"
Combo1.AddItem "0.001 Kilometros (km)"
Combo1.AddItem "0.000621371 Millas (mi)"
Combo1.AddItem "1.09361 Yardas (yd)"
Combo1.AddItem "3.28083 Pies (ft)"
End Sub



VBMedidas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar