Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: GhostLT en 25 Febrero 2011, 20:13 pm



Título: como recorrer Listbox y pasar valores a un arreglo?
Publicado por: GhostLT en 25 Febrero 2011, 20:13 pm
Hola, disculpen pero como puedo recorrer un listbox y pasar los valores a un arreglo?, esto es lo que tengo... :huh:
Código
  1. Dim arreglo(100) As Integer
  2. Dim l As Integer
  3. Dim n As Integer
  4. Dim valor As Integer
  5.        For l = 0 To List1.ListCount - 1
  6.            valor = List1.Text
  7.                For n = 1 To List1.ListCount - 1
  8.                    arreglo(n) = valor
  9.                Next
  10.        Next
  11. 'Por ultimo coloque unos textbox para confirmar que se guardaron los valores
  12. Text1.Text = arreglo(1)                 'me sale 0 y en realidad es un 2
  13. Text2.Text = arreglo(2)                 'me sale 0 y en realidad es un 4
  14. Text3.Text = arreglo(3)                  'me sale 0 y en realidad es un 1
  15.  


Título: Re: como recorrer Listbox y pasar valores a un arreglo?
Publicado por: ignorantev1.1 en 25 Febrero 2011, 21:36 pm
Código
  1.        For i = 0 To List1.ListCount - 1
  2.                 arreglo(i)  = list1.list(i)
  3.        Next
  4.  


Título: Re: como recorrer Listbox y pasar valores a un arreglo?
Publicado por: Sanlegas en 26 Febrero 2011, 01:26 am
Código
  1. Dim Arreglo()             As Integer
  2. Dim N                     As Integer
  3.    ReDim Arreglo(List1.ListCount - 1)
  4.    For N = 0 To List1.ListCount - 1
  5.        Arreglo(N) = List1.List(N)
  6.    Next
  7.    MsgBox Arreglo(0): MsgBox Arreglo(1): MsgBox Arreglo(2)
:-*


Título: [Solucionado] como recorrer Listbox y pasar valores a un arreglo?
Publicado por: GhostLT en 26 Febrero 2011, 15:56 pm
Funcionan, muchas gracias!!! :D


Título: Re: como recorrer Listbox y pasar valores a un arreglo?
Publicado por: SirioCasius en 26 Mayo 2016, 16:27 pm
No es un ListBox pero para el caso por ejemplo de varios Editbox como una array conseguir que los objetos de un formulario  tipo TEdit en mi caso estoy usando ,C++ builder xe, me los reconociera como una array. No lo conseguido y he buscado bastante (Creo que no se puede). Pero lo que SI HE CONSEGUIDO es pasar la información de estos objetos a una array creada tipo TEdit y luego pasarlos a una array tipo AnsiString y la vedad que de manera bastante fácil.

1º /*Declaramos los arreglos tanto tipo AnsiString como de tipo TEdit. La TEdit esta al llevar puntero tipo Text, hay que declararla dínamica mas otro puntero (con doble puntero). */

AnsiString *Nombres=new AnsiString[10];
TEdit **Edit=new TEdit*[10];

En el programa form los nombres de los TEdit están puestos como desde el Edit0 hasta Edit9

2º /*Pasamos los datos de los Editbox a la array Tedit** Edit con un button lo llamé IntroducirDatos con la ayuda de la función FindComponent() */
void __fastcall TForm3::IntroducirDatosClick(TObject *Sender)
{
        for (int n=0; n<ComponentCount; n++) {
            Edit[n] = static_cast<TEdit*>(FindComponent("Edit"+IntToStr(n)));
        }
}

3 /* Pasé los datos de la array Tedit a la array dinámica AnsiString *Nombres con otro button que lo llamé MostrarDatos */
void __fastcall TForm3::MostrarDatosClick(TObject *Sender)
{
    for (int n=0; n<10; n++) {
         Nombres[n]=Edit[n]->Text;
    }
    ShowMessage(Nombres[8]);
}
Le agregué un mensaje para verificar que se transferían bien los datos a Nombres.