Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-06-2005
jorodgar jorodgar is offline
Miembro
 
Registrado: abr 2005
Posts: 76
Poder: 20
jorodgar Va por buen camino
Uso del DrawItem

Tengo un TdxWinXPBar que consiste en unos items y una imagen (estilo treeview). el problema es que cuando se me ejecuta dxWinXPBar2DrawItem se pierde la imagen y solo me deja el texto. Me podeis ayudar??


procedure TForm1.dxWinXPBar2DrawItem(Sender: TObject; ACanvas: TCanvas;
Rect: TRect; State: TdxDrawState; Item: TdxWinXPBarItem;
Bitmap: TBitmap);
begin
ACanvas.TextOut(Rect.Left, Rect.Top + 2 , Item.caption);
// Item.ImageIndex:=0;
end;
Responder Con Cita
  #2  
Antiguo 29-06-2005
Avatar de yusnerqui
yusnerqui yusnerqui is offline
Miembro
 
Registrado: mar 2004
Ubicación: Cuba
Posts: 679
Poder: 21
yusnerqui Va por buen camino
Hola

Hola, También uso ese componente, lo que sucede es que al asignar un manejador para el evento OnDrawItem nos hacemos responsables del dibujado de toda el área que debe ocupar dicho Item, incluida el área de la imagen, según el código que pones de muestra solo dibujas el texto que se encuentra almacenado en la propiedad caption, por lo cual es lógico que no aparezca ninguna imagen.



Si deseas que se muestre la imagen que tiene asociada en el ImageList deberás hacer algo como esto en ese mismo evento:



Código Delphi [-]

  ACanvas.Draw(Rect.Left,Rect.Top+2,Bitmap);

  ACanvas.TextOut(Rect.Left+Bitmap.Width+5, Rect.Top + 2 , Item.caption);








Lo curioso es que el efecto final de este código es muy parecido a lo que muestra el componente por defecto, cabría preguntarse que objetivo persigues con el mismo.


Saludos
__________________
Lo importante no es llegar primero, sino saber llegar.

Para que puedas llegar mejor lee la Guia de Estilo

Responder Con Cita
  #3  
Antiguo 29-06-2005
jorodgar jorodgar is offline
Miembro
 
Registrado: abr 2005
Posts: 76
Poder: 20
jorodgar Va por buen camino
GEnial!!! Muchiisimas gracias. Funciona prefecto!!

Mi objetivo es hacer un chat. Con un click abriria la ventana de chat con esa persona ( esto sin problemas ) y con el boton derecho sobre un item se me abriria un popupmenu con opciones sobre ese item (obtener caracteristicas del equipo, etc..). Entonces, para saber en que item estoy cuando pincho en una opcion del popup, necesito usar el dxWinXPBar1DrawItem y dentro de él, guardarme en una variable global el item en el que estoy.

Gracias de nuevo por tu ayuda.
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


La franja horaria es GMT +2. Ahora son las 22:28: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