Página 1 de 1
Get como simular END, HOME, etc.
Enviado: 01 Abr 2021 19:44
por Itamar M. Lins Jr.
Ola!
Preciso colocar no buffer do teclado a tecla home, end... na edição do GET. Como faço isso ?
Pq no Linux quando uso:
oGetX:SetFocus() fica tudo selecionado e quando digito fica no final do get fora dos espaço reservado.
Por exemplo:
Código: Selecionar todos
cGetX := space(10)
oGetX : SetText(cGetX)
oGetX:SetFocus() //Aqui fica todo o get selecionado e quando digito começa no final vai para 11
Se tiverem uma forma melhor, aceito qualquer sugestão.
Saudações,
Itamar M. Lins Jr.
Get como simular END, HOME, etc.
Enviado: 01 Abr 2021 19:50
por asimoes
Tenta:
hwg_Keyb_Event( VK_HOME )
WHEN {|| hwg_Keyb_Event( VK_HOME ) } ;
Get como simular END, HOME, etc.
Enviado: 01 Abr 2021 19:56
por Itamar M. Lins Jr.
Olá!
asimoes escreveu:Tenta:
hwg_Keyb_Event( VK_HOME )
Já tinha tentado isso, mas não tem no Linux.
Preciso entender melhor. Porquê no Linux o GET tem alguns BUGs.
Vou tentar fazer um exemplo demostrando o problema, para ver se eles corrigem.
Estou linkando a lib Hwgui e a procmisc apenas, sabe de qual lib essa função faz parte ?
Saudações,
Itamar M. Lins Jr.
Get como simular END, HOME, etc.
Enviado: 01 Abr 2021 22:07
por asimoes
Itamar M. Lins Jr. escreveu:sabe de qual lib essa função faz parte ?
Essa função tá no fonte misc.c realmente só funciona no windows
Get como simular END, HOME, etc.
Enviado: 01 Abr 2021 22:13
por asimoes
Itamar,
Achei isso no fonte da GTK (hedit.prg)
ELSEIF wParam == GDK_Home // Home
::lFirst := .F.
hwg_edit_SetPos( ::handle, 0 )
Return 1
Get como simular END, HOME, etc.
Enviado: 01 Abr 2021 22:18
por asimoes
https://developer.gnome.org/gtk3/stable ... t-position
Código: Selecionar todos
HB_FUNC( HWG_EDIT_SETPOS )
{
gtk_editable_set_position( ( GtkEditable * ) HB_PARHANDLE( 1 ),
hb_parni( 2 ) );
}
Get como simular END, HOME, etc.
Enviado: 01 Abr 2021 22:20
por asimoes
Nesse caso usa o handle do edit para posicionar
Get como simular END, HOME, etc.
Enviado: 01 Abr 2021 22:30
por Itamar M. Lins Jr.
Ola!
Consegui isolar 2 bugs da Hwgui(get) no Linux.
Já postei lá, vamos ver se corrigem.
1 apaga o conteúdo do get e o outro quando uso setfocus() o cursor posiciona fora do espaço(area) do get, vai para o fim + 1
Vou testar essa HWG_EDIT_SETPOS para ver.
Saudações,
Itamar M. Lins Jr.
Get como simular END, HOME, etc.
Enviado: 01 Abr 2021 22:42
por Itamar M. Lins Jr.
Olá!
Cursor no fim
Código: Selecionar todos
...on click {||oName:SetFocus(),hwg_edit_SetPos( oName:Handle, len(alltrim(oName:value)) ),.T.}
ou Cursor no Inicio
Código: Selecionar todos
...on click {||oName:SetFocus(),hwg_edit_SetPos( oName:Handle, 0)) ),.T.}
Funcionou blz!!!
Saudações,
Itamar M. Lins Jr.