SoloCodigo

Programación General => C/C++ => C++ Builder => Mensaje iniciado por: saulillo en Miércoles 19 de Diciembre de 2007, 19:32

Título: Problemilla Con Listbox
Publicado por: saulillo en Miércoles 19 de Diciembre de 2007, 19:32
Hola,

Estoy haciendo un programa y una parte de el tiene un formulario con 2 ListBox (ListBox1 y ListBox2) y tengo q mandar el q esta seleccionado de un ListBox a otro, esto lo hago cuando se pulsa un boton y lo hace bien.

Mi problema sale cuando se pulsa ese boton y no hay nada seleccionado en el ListBox. Tengo este codigo:
Código: Text
  1.  
  2. String cambio1;
  3. if (ListBox1->Items->[ListBox1->ItemIndex] == "")
  4. {
  5.    ShowMessage("Elige un componente");
  6. }
  7. else
  8. {
  9.    ...
  10. }
  11.  

me da el error en la linea del if, dice: 'operator==' not implemented in type 'TStrings' for arguments of type 'char'

Un saludo
Título: Re: Problemilla Con Listbox
Publicado por: saulillo en Viernes 21 de Diciembre de 2007, 20:23
he cambiado un poco el codigo, ahora estoy probando con un try catch, pero creo q no lo hago bien, si podeis ayudarme... tengo esto:
Código: Text
  1.  
  2. String cambio1;
  3.    try{
  4.    cambio1 = ListBox1->Items->Strings[ListBox1->ItemIndex];
  5.    ListBox1->Items->Delete(ListBox1->ItemIndex);
  6.    ListBox2->Items->Strings[aux]= cambio1;
  7.    aux++;
  8.    aux1--;
  9.    }
  10.    catch(Exception & e){
  11.    ShowMessage("Elige un componente");
  12.    }
  13.  
  14.  

muchas gracias
Título: Re: Problemilla Con Listbox
Publicado por: TRod en Viernes 21 de Diciembre de 2007, 21:54
Me parece que te estas olvidando de Add(), no?
Saludos
Título: Re: Problemilla Con Listbox
Publicado por: saulillo en Lunes 24 de Diciembre de 2007, 11:08
no, porque cambio1 se pone en la siguiente posicion libre del ListBox2 marcada por la variable aux.
Título: Re: Problemilla Con Listbox
Publicado por: saulillo en Lunes 24 de Diciembre de 2007, 17:26
Bueno, ya se lo q le pasaba. tenia q deshabilitar las funciones del manejor de errores, para que se encargue mi programa de tratarlas.

Aqui os dejo como se hace, por si acaso alguien lo necesita.

seleccionar    Tools | Debuggber Options y abrir la carpeta OS Exceptions. Y desmarcar la casilla Integrated debugging


Un saludo.