Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

Auto Rellenar en ComboBox

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: Auto Rellenar en ComboBox Responder citando

hola,
necesito saber como puedo hacer para que al ir escribiendo en un ComboBox, me vaya apareciendo el texto completo si existe en en la lista del ComboBox. Mi idea es hacerlo como en en Internet Explorer, que la ir escribiendo me vaya auto rellenando lo que queda.
Tiene el TComboBox alguna propiedad para hacer esto automáticamente?, si no es asi, por favor, decidme cómo puedo hacerlo, mejor si es un ejemplo. Gracias
Volver arriba
Mensaje    Asunto: Auto Rellenar en ComboBox Responder citando

Hola:

La versión 6 si tiene una propiedad 'AutoComplete' para hacer esto. En las versiones anteriores puedes probar lo siguiente:

1.- Añade la siguiente declaración en la parte privada del Form:

  WORD ultimaTecla;

2.- El siguiente código en el evento OnKeyDown del combo:

  ultimaTecla = Key;

3.- Y lo siguiente en el evento OnChange del combo:

  TComboBox *combo = dynamic_cast<TComboBox*>(Sender);
  String sBuscar = combo->Text;
  if (ultimaTecla != VK_BACK)
  {
      int ret = combo->Perform(CB_FINDSTRING, -1, (int)sBuscar.c_str());
      if (ret != CB_ERR)
      {
          combo->ItemIndex = ret;
          combo->SelStart = sBuscar.Length();
          combo->SelLength = combo->Text.Length() - sBuscar.Length();
      }
  }
  ultimaTecla = 0;

---
Antes de ejecutarlo rellena la propiedad Items del combo con los valores que vas a usar para autocompletar.

Volver arriba
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.