Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-02-2007
Ge0Ks Ge0Ks is offline
Registrado
 
Registrado: feb 2007
Posts: 6
Poder: 0
Ge0Ks Va por buen camino
Ayuda ComboBoxEx

Hola a todos, primero que nada quiero agradecer a los usuarios por haberme contestado en el thread anterior, ahora me surgio otra duda....
quisiera saber como se puede asociar una imagen al texto que aparece en el comboboxex, por ej, tengo un "hola" y un "chau" y quiero que al lado del "hola" aparesca una imagen de una mano saludando y al lado del "chau" otra mano saludando ....

desde ya muchas gracias
Responder Con Cita
  #2  
Antiguo 27-02-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Cuando dices que quieres que aparezca una imagen al lado del "hola", ¿quieres decir que la imagen aparezca al lado del "Combo" o dentro del mismo? Piensa que dilucidar qué imagen mostrar (al lado del "Combo", por ejemplo) puede ser tan sencillo como realizar una comprobación en una condición, o sea, en Delphi:

Código Delphi [-]
if Combo.Text = 'Hola' then
  // Mostramos la imagen A
else if Combo.Text = 'Chau' then
  // Mostramos la imagen B
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #3  
Antiguo 27-02-2007
Marian0 Marian0 is offline
Registrado
 
Registrado: feb 2007
Posts: 7
Poder: 0
Marian0 Va por buen camino
la cosa es cómo mostrar la imágen xD
Responder Con Cita
  #4  
Antiguo 27-02-2007
Ge0Ks Ge0Ks is offline
Registrado
 
Registrado: feb 2007
Posts: 6
Poder: 0
Ge0Ks Va por buen camino
gracias por contestar pero a lo que yo venia era que queria saber como hacer eso que esta en comentarios o sea como hacer para mostrar la imagen con que metodo se puede realizar esto
Responder Con Cita
  #5  
Antiguo 27-02-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Bueno. Pero acuérdate de lo que dije antes:

Cita:
Empezado por dec
Cuando dices que quieres que aparezca una imagen al lado del "hola", ¿quieres decir que la imagen aparezca al lado del "Combo" o dentro del mismo?
Porque mostrar una imagen al lado del combo consiste en añadir un componente "TImage" y cargar en el mismo la imagen que sea menester...
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #6  
Antiguo 27-02-2007
Ge0Ks Ge0Ks is offline
Registrado
 
Registrado: feb 2007
Posts: 6
Poder: 0
Ge0Ks Va por buen camino
si lo que queremos hacer es que al lado de por ejemplo "hola" aparesca una imagen pequeña para facilitar la vista del programa, pero lo que no sabemos es como generar el TImage e insertarlo en el ComboboxEx xD desde ya muchas gracias
Responder Con Cita
  #7  
Antiguo 27-02-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
A ver, el ComboBoxEx tiene, entre sus particularidades, precisamente la de poder colocar imágenes a lado de cada ítem, que es- imagino -a lo que te refieres. Lo único que hay que hacer es poner las imágenes deseadas dentro de una componente ImageList, asociar ésta a la propiedad Images del ComboBoxEx y en el editor de ítemes del combo (propiedad ItemsEx), indicas el índice de la imagen en el ImageList que quieras opupar para cada ítem.

// Saludos
Responder Con Cita
  #8  
Antiguo 27-02-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Ignoro si en C++ Builder cuentas con el componente "ComboBoxEx" (en la pestaña "Win32" de la paleta de componentes), digo, que si cuentas con este componente tal vez te interese usarlo. Es un "ComboBox" con esteroides que entre otras cosas permite asignarle una lista de imágenes ("TImageList") y que cada "item" tenga asociada una por lo menos.

Si no cuentas con el componente "TComboBoxEx"... el caso es que creo que sí que era posible implementar lo que se necesita partiendo de un sencillo "TComboBox", empero, ahora mismo no sabría decirte... creo que en estos mismos Foros Román alguna vez solucionó algo así.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #9  
Antiguo 27-02-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por dec
Si no cuentas con el componente "TComboBoxEx"
Pero, ¡desde un principio preguntó por este componente!

Cita:
Empezado por título original del hilo
Ayuda ComboBoxEx
// Saludos
Responder Con Cita
  #10  
Antiguo 27-02-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

¡Pues ni me dí cuenta!

Ahora mismo estaba yo liado con el evento "OnDrawItem" del humilde "ComboBox" (no "Ex") puesto que como se dice en la ayuda:

Cita:
Write an OnDrawItem event handler to draw the items in the drop-down list of an owner-draw combo box. An OnDrawItem event handler can add graphic elements to the list items, or replace the list item text by graphics.
Je, je, je... ¡A ver si me pongo unas buenas gafas!
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #11  
Antiguo 27-02-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Bueno. Pues utilizando un "ComboBox" normal, corriente y moliente, poniendo su estilo a "csOwnerDrawFixed", podemos utilizar su evento "OnDrawItem" más o menos como sigue:

Código Delphi [-]
procedure TForm1.ComboBox1DrawItem(Control: TWinControl;
 Index: Integer; Rect: TRect; State: TOwnerDrawState);
begin
   with (Control as TComboBox) do
   begin
     Canvas.FillRect(Rect);

     { Los Items impares tendrán la imagen con index 0 que
       se encuentre en el componente "TImageList" que asumimos
     }
     if Odd(Index) then
       ImageList1.Draw(Canvas, 0, Rect.Top, 0)
     else
       // Los Items pares tendrán la imagen con index 1
       ImageList1.Draw(Canvas, 0, Rect.Top, 1);

     Canvas.TextOut(Rect.Left+18,Rect.Top,Items[Index]);
   end;
end;

Todavía quedaría por retocar algunos detallitos, pero, básicamente eso es.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #12  
Antiguo 27-02-2007
Ge0Ks Ge0Ks is offline
Registrado
 
Registrado: feb 2007
Posts: 6
Poder: 0
Ge0Ks Va por buen camino
muchisimas gracias por la respuesta
Responder Con Cita
Respuesta



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
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Instalar Ayuda (.HLP) en la Ayuda de Delphi? MasterXP Varios 6 12-04-2006 06:57:49
Ayuda para crear ayuda... Gabriel2 Varios 2 10-06-2005 00:15:18
Leer la ayuda... Ayuda! MaJeSTiC Varios 0 04-08-2004 21:24:42
ayuda con strtofloat, ayuda punto flotante TURING Varios 5 30-04-2004 08:03:59
Ayuda Con Instalacion De Archivos De Ayuda Legolas Varios 1 01-12-2003 14:48:03


La franja horaria es GMT +2. Ahora son las 21:21:41.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi