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 13-07-2007
Avatar de david_uh
david_uh david_uh is offline
Miembro
 
Registrado: may 2007
Ubicación: Arequipa, Perú
Posts: 227
Poder: 17
david_uh Va por buen camino
hints con item en lista !!!!!!

buen día caballeros

tengo una lista con varios items deseo que al seleccionarse un item parezca una etiqueta (hint) diferente por cada item, vi ese truco en algun lugar pero por mas que busco no lo encuentro

gracias por sus aportes
Responder Con Cita
  #2  
Antiguo 13-07-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
Quizá te sirve ver mi componente TComboHintsBox . Aunque no lo he probado, pienso que debería ser incluso más sencillo con un ListBox. En todo caso, el ejemplo puede servirte para ver como desplegar tus propios hints.

// Saludos
Responder Con Cita
  #3  
Antiguo 13-07-2007
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 20
cHackAll Va por buen camino
Código Delphi [-]
procedure TForm1.ListBox1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
 ListBox1.Hint := ListBox1.Items[(Y - 1) div ListBox1.ItemHeight];
 Application.ActivateHint(Mouse.CursorPos);
end;

0j0: ListBox1.ShowHint := True;
Responder Con Cita
  #4  
Antiguo 13-07-2007
Avatar de david_uh
david_uh david_uh is offline
Miembro
 
Registrado: may 2007
Ubicación: Arequipa, Perú
Posts: 227
Poder: 17
david_uh Va por buen camino
bien ahi, funciona si pongo el mouse desearia que trabaje con el elemento seleccionado ya sea que este seleccionado por teclado o por instruccuines del programa , es decir que la etiqueta aparezca encima o debajo de el elemento seleccionado

gracias por tu ayuda
Responder Con Cita
  #5  
Antiguo 13-07-2007
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 20
cHackAll Va por buen camino
Código Delphi [-]
procedure TForm1.ListBox1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
 if ListBox1.ItemIndex <> -1 then
  begin
   ListBox1.Hint := ListBox1.Items[ListBox1.ItemIndex];
   Application.ActivateHint(Mouse.CursorPos);
  end;
end;
 
procedure TForm1.ListBox1KeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
 if Key in [VK_PRIOR..VK_DOWN] then
  begin
   Mouse.CursorPos := ListBox1.ClientToScreen(Point(ListBox1.Width div 2, (ListBox1.ItemIndex * ListBox1.ItemHeight) + (ListBox1.ItemHeight div 2)));
   ListBox1MouseMove(Sender, [], 0, 0);
  end;
end;

No está en el OnKeyDown (pues se vería mejor), porque aún no habría actualizado el ItemIndex... ahora de poder se puede.
Responder Con Cita
  #6  
Antiguo 13-07-2007
Avatar de david_uh
david_uh david_uh is offline
Miembro
 
Registrado: may 2007
Ubicación: Arequipa, Perú
Posts: 227
Poder: 17
david_uh Va por buen camino
pues nada, al seleccionar un elemento con el teclado desaparece el cursor del mouse, es decir se va a al parte inferior de la pantalla
Responder Con Cita
  #7  
Antiguo 13-07-2007
Avatar de david_uh
david_uh david_uh is offline
Miembro
 
Registrado: may 2007
Ubicación: Arequipa, Perú
Posts: 227
Poder: 17
david_uh Va por buen camino
bien lo solucione poniendole a la cordenada y el valor del top de la lista

gracias sirvio de mucho
Responder Con Cita
  #8  
Antiguo 14-07-2007
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 20
cHackAll Va por buen camino
Cita:
Empezado por david_uh
...lo solucione poniendole a la cordenada y el valor del top de la lista..
Me alegra que te haya servido, pero me parece que tu solicion a la nueva eventualidad no es la adecuada (anti estética)... prueba reemplazar con ésto:

Código Delphi [-]
   Mouse.CursorPos := ListBox1.ClientToScreen(Point(ListBox1.Width div 2, ((ListBox1.ItemIndex - Windows.GetScrollPos(ListBox1.Handle, SB_VERT)) * ListBox1.ItemHeight) + (ListBox1.ItemHeight div 2)));
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
HINTs Deiv HTML, Javascript y otros 0 14-02-2007 00:16:54
Hints en .NET ULVIER .NET 2 28-12-2006 01:58:30
Hints permanentes oregon OOP 9 24-11-2006 17:25:06
statusbar y hints urush30 Varios 3 05-08-2004 12:43:55
Hints ralentizan el ratón Beckham Varios 1 09-08-2003 01:16:52


La franja horaria es GMT +2. Ahora son las 18:25:18.


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