border

Miembros:
Mensajes:
Temas:
Online:

Ultimo Miembro:

 
 

Cuenta Bancaria en EEUU
  #1 (permalink)  
Antiguo 24-09-2007, 20:57:25
Junior Member
Site Admin
 
Registrado: jun 2007
Posts: 8
josijosi Valoración +2
Predeterminado Problema con un ejemplo de una pagina

Hola, ante todo, felicitar a los que han hecho posible este extraordinario foro durante ya 4 años, sin duda todo un reto que ha podido superarse con un exito, creo yo, bastante bueno jaja.


Bien, despues d esta introduccion, os cuento mi problema, estoy aprendiendo Visual y a pesar de que lo domino, hablando a nivel basico claro jeje, tengo muchas dudas, com la que os presento a continuacion.

Hace poco hice este ejemplo de edades http://www.recursosvisualbasic.com.a...l-basic/32.htm y fue todo bastante bian hasta que me puse a experimentar con el, el caso es que solamente puedo añadir un item con su respectivo valor siempre y cuando este sea un numero. Me gustaria que me ayudaseis a ver cual es el error que me muestra esta imagen:






Aqui esta el codigo por si lo quereis poner en practica:


'Creamos una estructura para el ejemplo

Private Type Visual
edad As String
nombre As String
End Type


Private Sub Form_Load()

'creamos un arreglo de 3 indices de tipo Mitipo

Dim arreglo(1 To 4) As Visual 'Llenamos la matriz
arreglo(1).edad = 26
arreglo(1).nombre = "Carlos"
arreglo(2).edad = 32
arreglo(2).nombre = "Veronica"
arreglo(3).edad = 25
arreglo(3).nombre = "Martin"
arreglo(4).edad = dfgdfg
arreglo(4).nombre = "3GP Converter"


'Hacemos un bucle para guardar los valores. Mediante el
'metodo item agregamos los nombres anteriores, y en cada
'nombre le asociamos la edad mediante la propiedad ItemData

For i = 1 To 4
Combo1.AddItem arreglo(i).nombre
Combo1.ItemData(i - 1) = arreglo(i).edad
Next

End Sub

'Cuando pinchamos un elemento, nos muestra su valor asociado
'en la propiedad ItemData, es decir nos muestra la edad

Private Sub Combo1_Click()
Label1.Caption = "La edad es: " & Combo1.ItemData(Combo1.ListIndex)
End Sub





Saludos y gracias


End Sub
Responder Con Cita
  #2 (permalink)  
Antiguo 25-09-2007, 00:06:12
Avatar de malm82
Gran Participación en el Foro
 
Registrado: dic 2006
Ubicación: Cancun,Quintana Roo
Posts: 186
malm82 Valoración +2
Predeterminado

El problema que te surge es porque esa propiedad no acepta cadenas...
__________________
Saludos desde Cancùn...
Alex malm
Código:
Pienso primero luego programo
Responder Con Cita
  #3 (permalink)  
Antiguo 25-09-2007, 14:03:05
Junior Member
Site Admin
 
Registrado: jun 2007
Posts: 8
josijosi Valoración +2
Predeterminado

Gracias, pero com hago para que me deje???


Saludoss
Responder Con Cita
  #4 (permalink)  
Antiguo 25-09-2007, 18:30:52
Avatar de acalanto
Moderador
 
Registrado: dic 2002
Ubicación: Madrid
Posts: 4.307
acalanto ha deshabilitado la reputación
Predeterminado

Tienes dos opciones posibles y puedes elegir la que mas te guste, aunque en mi opinión lo mejor es cambiar la estructura de datos (Primera opción)


PRIMERA

Código:
Private Type Visual
    edad As Byte
    nombre As String
End Type

SEGUNDA

Código:
Private Sub Form_Load()
    'creamos un arreglo de 3 indices de tipo Mitipo
    Dim arreglo(1 To 4) As Visual 'Llenamos la matriz
    arreglo(1).edad = 26
    arreglo(1).nombre = "Carlos"
    arreglo(2).edad = 32
    arreglo(2).nombre = "Veronica"
    arreglo(3).edad = 25
    arreglo(3).nombre = "Martin"
    arreglo(4).edad = dfgdfg
    arreglo(4).nombre = "3GP Converter"
    'Hacemos un bucle para guardar los valores. Mediante el
    'metodo item agregamos los nombres anteriores, y en cada
    'nombre le asociamos la edad mediante la propiedad ItemData
    For i = 1 To 4
        Combo1.AddItem arreglo(i).nombre
        Combo1.ItemData(i - 1) = VAL(arreglo(i).edad)
    Next I 
End Sub

PD: En la estructura reemplazo String por Byte, dando por entendido que ningún ser vivo (que al menos yo conozca) puede superar 255 años de edad. Si entre los items se encuentra 'Matusalén', puedes cambiar por un tipo Integer, ya que creo que vivió 900 años (aproximadamente). Esta apostilla, es en tono de broma, lógicamente.
__________________
Un cordial saludo
-Acalanto-

Madrid - España

Visual Basic
Videos Programacion
Foro Programacion
Tutoriales Programacion
Responder Con Cita
  #5 (permalink)  
Antiguo 28-09-2007, 20:42:10
Junior Member
Site Admin
 
Registrado: jun 2007
Posts: 8
josijosi Valoración +2
Predeterminado

Muchas gracias pero la pregunta que ice era para que me acepte cadenas (strings), es decir cuando elijo una entrada del combo, que me muestre, por ejemplo, en un label el valor del item (itemdata)


Gracias otra vez jeje

Saludos
Responder Con Cita
  #6 (permalink)  
Antiguo 28-09-2007, 20:56:03
Buena Participación en el Foro
 
Registrado: nov 2006
Posts: 33
guampu Valoración +2
Predeterminado

hola quizas no entendi lo que necesitas probar.. pero te diste cuenta que no funciona porque tiene una cadena en la asignacion 4 del array?
arreglo(4).edad = dfgdfg
donde la declara como de tipo byte.
para que acepte strings tenes que cambiar la estructura.
Responder Con Cita
  #7 (permalink)  
Antiguo 29-09-2007, 09:00:30
Avatar de acalanto
Moderador
 
Registrado: dic 2002
Ubicación: Madrid
Posts: 4.307
acalanto ha deshabilitado la reputación
Predeterminado

Ya veo que no es exactamente la pregunta que haces, pero es que lo que inicialmente pretendes no lo admite la propiedad ItemData de un ComboBox. Por otra parte sorprende un poco una aplicación en la que el valor 'edad' se implemente mediante daos tipo cadena.

En todo caso lo que también puedes hacer es acceder al array de la estructura mediante la propiedad ListIndex, que te retorna un combo, según el item seleccionado.


label1.edad = arreglo(me.combo.listindex+1).edad

todo ello descartando la forma en al que lo intentas hacer utilizando ItemData.

No sé si ahora te encajará con la pregunta que hiciste o te provocará un nuevo error y duda.
__________________
Un cordial saludo
-Acalanto-

Madrid - España

Visual Basic
Videos Programacion
Foro Programacion
Tutoriales Programacion
Responder Con Cita
Respuesta


Herramientas
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Trackbacks are habilitado
Pingbacks are habilitado
Refbacks are habilitado


Temas Similares
Tema Autor Foro Respuestas Último Mensaje
Devolver a pagina principal si entra por pagina secundaria Lord Vader PHP 1 09-05-2007 20:37:04
Ejemplo metodo.. vbprog JAVA (General) 3 25-04-2007 05:16:14
Ejemplo en VB Word Ronald_Leon_Madrid Visual Basic 6.00 2 25-02-2005 22:53:54
ejemplo de componente josegol Visual Basic 6.00 2 03-11-2004 16:30:09
Problema con parametros de OCX en página web rikitiki Visual Basic 6.00 1 17-09-2004 01:00:00


La franja horaria es GMT. Ahora son las 06:02:55.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO 3.1.0
A vBSkinworks Design

Alojado en el servicio Premium de Masquewebs | Diseño mejorado por MasqueWebs

right