Tem como usar o ENTER no ListBox ?
Á ideia é escolher uma linha quando o foco estiver nesta linha digitar um enter ele disparar comandos, com o evento Click e DoubleClick sei que funciona. tem algum evento que possa usar o ENTER ?
Obrigado.
Tem como usar o ENTER no ListBox ?
Á ideia é escolher uma linha quando o foco estiver nesta linha digitar um enter ele disparar comandos, com o evento Click e DoubleClick sei que funciona. tem algum evento que possa usar o ENTER ?
Obrigado.
Evento CellKeyDown:
http://documentation.xojo.com/index.php/ListBox.CellKeyDown
Voc recebe a linha, a coluna e a tecla pressionada, para verificar e realizar a ao que desejar…
Aqui tem um trecho de cdigo para tratar teclas pressionadas, fornecido pelo @DaveS , neste post:
https://forum.xojo.com/4213-trouble-capturing-listbox-keystrokes/0#p29281
FUNCTION keydown(key as string) as boolean
SELECT CASE ASCB(key)
case 3,13
''' do what ever the ENTER or RETURN key should do
case 9
''' do what ever the TAB key should do
case 8
''' handle a backspace
case 28
''' handle back arrow
case 29
''' handle right arrow
case 30
''' handle up arrow
case 31
''' handle down arrow
case else
return false ' let OS handle the key, as it is not one you want to handle special
end select
return true ' you handled the key.... OS will ignore it now
END FUNCTION
O problema do evento CellKeyDown que a clula tem que estar liberada para edio.
me.ColumnType(0) = 3 // Editable
me.ColumnType(1) = 3 // Editable
E eu no queria que a linha do listbox fossem editadas, achei o evento KeyUp que passa como parametro o key que resolveu minha vida, o resto da rotina que foi colocada de exemplo resolve.
Muito obrigado.