Selecionar Item ListBox com o Mouse
Pessoal, alguém sabe se é possível selecionar os itens do ListBox apenas
movendo o mouse, tipo, selecionar o item em que o cursor do
mouse estiver em cima??
Outro, tem como exibir em forma de hint, o texto do item selecionado, caso o texto seja maior que a largura da caixa do ListBox
abraço
movendo o mouse, tipo, selecionar o item em que o cursor do
mouse estiver em cima??
Outro, tem como exibir em forma de hint, o texto do item selecionado, caso o texto seja maior que a largura da caixa do ListBox
abraço
Eniorm
Curtidas 0
Respostas
Ipc$
15/12/2005
No evento onMouseMove:
Para o hint, acho que vc precisará criar um THintWindow
procedure TForm1.ListBox1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); var pt:TPoint; begin pt.X := X; pt.Y := Y; ListBox1.ItemIndex := ListBox1.ItemAtPos(pt, true); end;
Para o hint, acho que vc precisará criar um THintWindow
GOSTEI 0
Eniorm
15/12/2005
[quote:17e30b8230=´ipc$´]Para o hint, acho que vc precisará criar um THintWindow[/quote:17e30b8230]
só não entendi a linha acima? oq é o THindWindow............?
abraço
só não entendi a linha acima? oq é o THindWindow............?
abraço
GOSTEI 0
Edilcimar
15/12/2005
no método dito pelo ipc não dá para colocar algo como
hint := listbox.itemindex ou
hint := listbox.itematpos?
hint := listbox.itemindex ou
hint := listbox.itematpos?
GOSTEI 0
Adriano Santos
15/12/2005
[quote:380186fbcc=´Enio Marconcini´][quote:380186fbcc=´ipc$´]Para o hint, acho que vc precisará criar um THintWindow[/quote:380186fbcc]
só não entendi a linha acima? oq é o THindWindow............?
abraço[/quote:380186fbcc]
Eu entendi, tem um exemplo que o editor do portal passou estes dias. Estou Tentando adaptar aqui, mas tah meio feio ainda...porém funciona.
[url=https://www.devmedia.com.br/visualizacomponente.aspx?comp=948&site=3]Ativar Hint[/url]
só não entendi a linha acima? oq é o THindWindow............?
abraço[/quote:380186fbcc]
Eu entendi, tem um exemplo que o editor do portal passou estes dias. Estou Tentando adaptar aqui, mas tah meio feio ainda...porém funciona.
[url=https://www.devmedia.com.br/visualizacomponente.aspx?comp=948&site=3]Ativar Hint[/url]
GOSTEI 0
Martins
15/12/2005
[quote:143f9e1a2a=´Adriano Santos´][quote:143f9e1a2a=´Enio Marconcini´][quote:143f9e1a2a=´ipc$´]Para o hint, acho que vc precisará criar um THintWindow[/quote:143f9e1a2a]
só não entendi a linha acima? oq é o THindWindow............?
abraço[/quote:143f9e1a2a]
Eu entendi, tem um exemplo que o editor do portal passou estes dias. Estou Tentando adaptar aqui, mas tah meio feio ainda...porém funciona.
[url=https://www.devmedia.com.br/visualizacomponente.aspx?comp=948&site=3]Ativar Hint[/url][/quote:143f9e1a2a]
Tb olhei essa dica passada acho q pelo Luciano Pimenta
só não entendi a linha acima? oq é o THindWindow............?
abraço[/quote:143f9e1a2a]
Eu entendi, tem um exemplo que o editor do portal passou estes dias. Estou Tentando adaptar aqui, mas tah meio feio ainda...porém funciona.
[url=https://www.devmedia.com.br/visualizacomponente.aspx?comp=948&site=3]Ativar Hint[/url][/quote:143f9e1a2a]
Tb olhei essa dica passada acho q pelo Luciano Pimenta
GOSTEI 0
Ipc$
15/12/2005
Cada vez que um hint é exibido, o TApplication cria uma instância do objeto THintWindow p/ poder exibí-lo. No seu caso seria mais simples vc ativar ShowHint do Listbox e após vc assinalar o itemindex >= 0 vc faz: no final do evento onMouseMove.
Cheque se ItemIndex >=0, senão dará erro.
ListBox1.Hint := ListBox1.Items[ListBox1.ItemIndex]; Application.ActivateHint(pt);
Cheque se ItemIndex >=0, senão dará erro.
GOSTEI 0
Adriano Santos
15/12/2005
[quote:685bdad22a=´Adriano Santos´][quote:685bdad22a=´Enio Marconcini´][quote:685bdad22a=´ipc$´]Para o hint, acho que vc precisará criar um THintWindow
só não entendi a linha acima? oq é o THindWindow............?
abraço[/quote:685bdad22a]
Eu entendi, tem um exemplo que o editor do portal passou estes dias. Estou Tentando adaptar aqui, mas tah meio feio ainda...porém funciona.
[url=https://www.devmedia.com.br/visualizacomponente.aspx?comp=948&site=3]Ativar Hint[/url][/quote:685bdad22a]
Tb olhei essa dica passada acho q pelo Luciano Pimenta[/quote:685bdad22a]
É isso msm, foi o Luciano.
GOSTEI 0
Martins
15/12/2005
Só para retificar, pois no fim da dica tem esse nome [b:290ee1b653]Walter Alves Chagas Junior[/b:290ee1b653], suponho q este seja o autor da dica.
valew!!
valew!!
GOSTEI 0
Adriano Santos
15/12/2005
Só para retificar, pois no fim da dica tem esse nome [b:d6312512a9]Walter Alves Chagas Junior[/b:d6312512a9], suponho q este seja o autor da dica.
valew!!
Vixi, falei merda...rsrs...
GOSTEI 0
Martins
15/12/2005
[quote:39d083a299=´Adriano Santos´]
Vixi, falei merda...rsrs...[/quote:39d083a299]
Esquenta não [b:39d083a299]Adriano[/b:39d083a299], afinal tem lá no inicio ´ dica do editor´, então normalz, relaxa.
Abaraços!!!
Só para retificar, pois no fim da dica tem esse nome [b:39d083a299]Walter Alves Chagas Junior[/b:39d083a299], suponho q este seja o autor da dica.
valew!!
Vixi, falei merda...rsrs...[/quote:39d083a299]
Esquenta não [b:39d083a299]Adriano[/b:39d083a299], afinal tem lá no inicio ´ dica do editor´, então normalz, relaxa.
Abaraços!!!
GOSTEI 0
Adriano Santos
15/12/2005
Pessoal, achei este tópico que pode ajudar a complementar as dicas enviadas por todos.
[url=http://delphi.about.com/cs/adptips2001/a/bltip0201_4.htm]Delphi About [/url]
[url=http://delphi.about.com/cs/adptips2001/a/bltip0201_4.htm]Delphi About [/url]
GOSTEI 0
Eniorm
15/12/2005
Amigos, veja como ficou o codigo,
o resultado ficou bastante legal.... vejam!
agora o estranho é que eu esperava exibir as hints de apenas os itens cujo texto é maior que a largura do ListBox, não sendo necessário exibir a hint para itens que possui o texto que ja esteja exibindo completamente no ListBox... mas de qualquer forma eu gostei do resultado... muito obrigado a todos que ajudaram com posts e sugestões.....
que o codigo acima sirva caso vcs precisem...
abraço
procedure TForm1.ListBox1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); var pt : TPoint; begin pt.X := X; pt.Y := Y; ListBox1.ItemIndex := ListBox1.ItemAtPos(pt, true); if (ListBox1.ItemIndex >= 0) then begin ListBox1.Cursor := crHandPoint; ListBox1.Hint := ListBox1.Items[ListBox1.ItemIndex]; Application.ActivateHint(pt); end else begin ListBox1.Cursor := crDefault; ListBox1.Hint := ´´; end; end;
o resultado ficou bastante legal.... vejam!
agora o estranho é que eu esperava exibir as hints de apenas os itens cujo texto é maior que a largura do ListBox, não sendo necessário exibir a hint para itens que possui o texto que ja esteja exibindo completamente no ListBox... mas de qualquer forma eu gostei do resultado... muito obrigado a todos que ajudaram com posts e sugestões.....
que o codigo acima sirva caso vcs precisem...
abraço
GOSTEI 0
Adriano Santos
15/12/2005
[quote:49ef254e3f=´Enio Marconcini´]Amigos, veja como ficou o codigo,
o resultado ficou bastante legal.... vejam!
agora o estranho é que eu esperava exibir as hints de apenas os itens cujo texto é maior que a largura do ListBox, não sendo necessário exibir a hint para itens que possui o texto que ja esteja exibindo completamente no ListBox... mas de qualquer forma eu gostei do resultado... muito obrigado a todos que ajudaram com posts e sugestões.....
que o codigo acima sirva caso vcs precisem...
abraço[/quote:49ef254e3f]
É isso ai Enio, fico feliz de ter ajudado e uma coisa importante é ter sempre o feedback de quem foi ajudado...assim isso serve para demais usuários.
abraço
procedure TForm1.ListBox1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); var pt : TPoint; begin pt.X := X; pt.Y := Y; ListBox1.ItemIndex := ListBox1.ItemAtPos(pt, true); if (ListBox1.ItemIndex >= 0) then begin ListBox1.Cursor := crHandPoint; ListBox1.Hint := ListBox1.Items[ListBox1.ItemIndex]; Application.ActivateHint(pt); end else begin ListBox1.Cursor := crDefault; ListBox1.Hint := ´´; end; end;
o resultado ficou bastante legal.... vejam!
agora o estranho é que eu esperava exibir as hints de apenas os itens cujo texto é maior que a largura do ListBox, não sendo necessário exibir a hint para itens que possui o texto que ja esteja exibindo completamente no ListBox... mas de qualquer forma eu gostei do resultado... muito obrigado a todos que ajudaram com posts e sugestões.....
que o codigo acima sirva caso vcs precisem...
abraço[/quote:49ef254e3f]
É isso ai Enio, fico feliz de ter ajudado e uma coisa importante é ter sempre o feedback de quem foi ajudado...assim isso serve para demais usuários.
abraço
GOSTEI 0
Adriano Santos
15/12/2005
Caramba, testei hoje de manhã e ficou show de bola mesmo o esquema hein? Parabéns mano.
GOSTEI 0