Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Pasar elementos de un listbox a varios text

Estas en el tema de Pasar elementos de un listbox a varios text en el foro de Visual Basic clásico en Foros del Web. Hola buenos dias amigos!!! Necesito me guien con algo.. si tengo un listbox con varios elementos, coloque en la propieda del listbox, MultiSelect 2-Extended de ...
  #1 (permalink)  
Antiguo 18/04/2008, 08:07
Avatar de Kitty_05  
Fecha de Ingreso: marzo-2008
Ubicación: SITEL un call center en Panamá
Mensajes: 100
Antigüedad: 16 años, 1 mes
Puntos: 0
Información Pasar elementos de un listbox a varios text

Hola buenos dias amigos!!!

Necesito me guien con algo..

si tengo un listbox con varios elementos, coloque en la propieda del listbox,
MultiSelect 2-Extended de manera que se puedan hacer varios clicks al mismo tiempo.
Deseo que si se seleccionan dos o tres...
cada elemento seleccionado caiga en un tex diferente, no se si me explike ..

pongo un ejemplo..

--listbox-------------------------- text--
perro............................................. ............gato
gato(seleccionado)................................ ....gusano
parajo -
gusano(seleccionado) -

los elementos se despliegan en el list box sacados de la base d datos
Código:
Set RecVar = New ADODB.Recordset

RecVar.Open "select * from provs where prov_aprobacion <> '.' ", BD, adOpenStatic, adLockOptimistic
    Do Until RecVar.EOF
        ArtProvs.AddItem RecVar.Fields(1)
        RecVar.MoveNext
    Loop

  RecVar.Close
Con eso no tengo problema, lo de mostrar los seleccionados en el text si que no tengo ni idea :( me ayudan
  #2 (permalink)  
Antiguo 18/04/2008, 10:58
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 16 años, 3 meses
Puntos: 37
Re: Pasar elementos de un listbox a varios text

Hola,

con la popiedad MultiSelect puedes seleccionar varios elementos del ListBox, pero contiguos. En tu ejemplo, eso no lo puedes hacer, tendrías que seleccionar gato, pájaro, gusano.

Lo mas idóneo es que le pongas la propiedad Style a 1-CheckBox y ahí sí podrás seleccionar items alternos.

De todas formas, ¿cómo controlas a qué TextBox ha de ir cada elemento seleccionado?. Por ejemplo, imagina que tienes 3 TextBox y el usuario selecciona 4 elementos del ListBox, eso te dará error.

Pienso que sería mejor que los seleccionados los fueras pasando a otro ListBox, ComboBox, ListView, Grid...

Un saludo
  #3 (permalink)  
Antiguo 18/04/2008, 11:36
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Re: Pasar elementos de un listbox a varios text

Estoy de acuerdo con Avellaneda, que sería mejor colocar los Ítems seleccionados en otro ListBox. Por ejemplo:
Código:
 
Dim Looping As Long
For Looping = 0 To ArtProvs.ListCount - 1
        If ArtProvs.Selected(Looping) Then
                SelectedList.AddItem ArtProvs.List(Looping)
        End If
Next Looping
Ahora bien, si necesitas que sea en TextBox, podrías crear una matriz de controles y cargar por cada Ítem seleccionado. No obstante, tendrías que escribir más código para posicionarlos correctamente.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #4 (permalink)  
Antiguo 18/04/2008, 13:36
Avatar de Kitty_05  
Fecha de Ingreso: marzo-2008
Ubicación: SITEL un call center en Panamá
Mensajes: 100
Antigüedad: 16 años, 1 mes
Puntos: 0
Re: Pasar elementos de un listbox a varios text

La verdad si necesito que sea en text boxs, me pueden ayudar :( .. la verdad es entre tantas cosas que he hecho algunas me han funcionado pero no del todo como kiero ..
el asunto es q es necesrio que sea en textbox
  #5 (permalink)  
Antiguo 18/04/2008, 14:14
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Re: Pasar elementos de un listbox a varios text

Cita:
Iniciado por Kitty_05 Ver Mensaje
La verdad si necesito que sea en text boxs, me pueden ayudar :( .. la verdad es entre tantas cosas que he hecho algunas me han funcionado pero no del todo como kiero ..
el asunto es q es necesrio que sea en textbox
Prueba con esto:
Código:
Dim Looping As Long
For Looping = 0 To ArtProvs.ListCount - 1
        If ArtProvs.Selected(Looping) Then
                NewText ArtProvs.List(Looping)
        End If
Next Looping
Código:
 
Sub NewText(ByVal Text As String)
'Cargamos un nuevo TextBox
Load Text1(Text1.Count)
'Ubicamos el TextBox debajo del último
Text1(Text1.Count - 1).Left = Text1(Text1(0).Left)
Text1(Text1.Count - 1).Top = Text1(Text1.Count - 2).Top + Text1(Text1(0).Height)
'Mostramos el TextBox cargado
Text1(Text1.Count - 1).Text = Text
Text1(Text1.Count - 1).Visible = True
End Sub
Debes tener un TextBox llamado Text1, debe ser una matriz.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #6 (permalink)  
Antiguo 18/04/2008, 14:14
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 16 años, 3 meses
Puntos: 37
Re: Pasar elementos de un listbox a varios text

Bueno, entendemos que tenga que ser necesariamente en TextBox (no encuentro la razón) pero... has pensado en lo que te dije anteriormente?

Cita:
Iniciado por Avellaneda Ver Mensaje
con la popiedad MultiSelect puedes seleccionar varios elementos del ListBox, pero contiguos. En tu ejemplo, eso no lo puedes hacer, tendrías que seleccionar gato, pájaro, gusano.

De todas formas, ¿cómo controlas a qué TextBox ha de ir cada elemento seleccionado?. Por ejemplo, imagina que tienes 3 TextBox y el usuario selecciona 4 elementos del ListBox, eso te dará error.
Y además nos gustaría que nos pusieras esas tantas cosas que te han funcionado pero no del todo como kieres.
  #7 (permalink)  
Antiguo 18/04/2008, 14:21
Avatar de Kitty_05  
Fecha de Ingreso: marzo-2008
Ubicación: SITEL un call center en Panamá
Mensajes: 100
Antigüedad: 16 años, 1 mes
Puntos: 0
Pregunta Re: Pasar elementos de un listbox a varios text

Código:
Private Sub ArtProvs_Click()
Dim x As Long
Dim r, tmp

For x = 0 To ArtProvs.ListCount - 1
    If ArtProvs.Selected(x) Then
       ArtReq(x).Text = ArtProvs.List(x)
    End If
    
Next x
End Sub
Esto me funciona pero me coloca lo q capturo directamente en el textbox q tenga el mismo indice del listbox.

Eso esta bien pero no logro q lo agregue justo al siguiente
por ejemplo si selecciona el ArtProvs.List(2) del listbox q lo agregue al ArtReq(1).Text y solo al 1 .. aora solo logro que caiga en el que corresponde al indice se q la razon es pq tienen la misma variable pero si le coloc otra diferente no se como sacarlo del ciclo luego de q llena ese campo
  #8 (permalink)  
Antiguo 18/04/2008, 14:28
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Re: Pasar elementos de un listbox a varios text

Cita:
Iniciado por Kitty_05 Ver Mensaje
Código:
Private Sub ArtProvs_Click()
Dim x As Long
Dim r, tmp
 
For x = 0 To ArtProvs.ListCount - 1
    If ArtProvs.Selected(x) Then
       ArtReq(x).Text = ArtProvs.List(x)
    End If
 
Next x
End Sub
Esto me funciona pero me coloca lo q capturo directamente en el textbox q tenga el mismo indice del listbox.

Eso esta bien pero no logro q lo agregue justo al siguiente
por ejemplo si selecciona el ArtProvs.List(2) del listbox q lo agregue al ArtReq(1).Text y solo al 1 .. aora solo logro que caiga en el que corresponde al indice se q la razon es pq tienen la misma variable pero si le coloc otra diferente no se como sacarlo del ciclo luego de q llena ese campo
Coloca un contador:
Código:
 
Private Sub ArtProvs_Click()
Dim Count As Long
Dim x As Long
Dim r, tmp
 
For x = 0 To ArtProvs.ListCount - 1
    If ArtProvs.Selected(x) Then
       ArtReq(Count).Text = ArtProvs.List(x)
       Count = Count + 1
    End If
 
Next x
End Sub
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #9 (permalink)  
Antiguo 18/04/2008, 14:43
Avatar de Kitty_05  
Fecha de Ingreso: marzo-2008
Ubicación: SITEL un call center en Panamá
Mensajes: 100
Antigüedad: 16 años, 1 mes
Puntos: 0
Re: Pasar elementos de un listbox a varios text

Eres un sol :D gracias corazon siempre tan antentos todos :) funciono...
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 22:23.