Página 1 de 1

Marcar Grid e ir para Proxima coluna

Enviado: 15 Nov 2015 17:27
por Nascimento
amigos venho aqui novamente para perguntar se tem como tipo
eu teclar "X" no teclado em uma grid e ir marcando e descendo a proxima linha
selecionando os itens ?? a grid contera basicamente 3 colunas exemplo {"MARCAR","NOME","NUMERO"}
ao descer a linha so fica o foco na coluna marcar da proxima linha

que tanto use o "X" do teclado quanto o click do mouse se eu clicar na coluna marcar adiciona um "X" na coluna

Marcar Grid e ir para Proxima coluna

Enviado: 15 Nov 2015 18:04
por Toledo
Amigo, veja o demo que está na pasta C:\MiniGUI\SAMPLES\BASIC\CheckBox_Grid.
Neste demo você pode selecionar os itens clicando no CheckBox ou pressionando a Barra de Espaço do teclado, mas com o ON KEY você pode executar um código para selecionar o item utilizando uma outra tecla (ON KEY VK_X OF Form_1 ACTION {|| SuaFuncao()}).

Para selecionar:

Código: Selecionar todos

nItem:=Form_1.Grid_1.Value
Form_1.Grid_1.CheckboxItem (nItem) := .t.
Abraços,

Marcar Grid e ir para Proxima coluna

Enviado: 15 Nov 2015 18:46
por Nascimento
por Toledo você pode executar um código para selecionar o item utilizando uma outra tecla (ON KEY VK_X OF Form_1 ACTION {|| SuaFuncao()}).
pelo que vi o exemplo vai se encaixar no que preciso so nao entendi como mudar o backspace para o "X" e ao mesmo tempo pular uma linha da grid

Marcar Grid e ir para Proxima coluna

Enviado: 15 Nov 2015 23:25
por Toledo
Como disse na minha mensagem anterior, use o comando ON KEY VK_X OF Form_1 ACTION {|| SuaFuncao()}, então antes de:

Código: Selecionar todos

Form_1.center
Form_1.activate
Coloque o comando:

Código: Selecionar todos

ON KEY VK_X OF Form_1 ACTION {|| SuaFuncao()}
Na função SuaFuncao():

Código: Selecionar todos

Func SuaFuncao()
nItem:=Form_1.Grid_1.Value
Form_1.Grid_1.CheckboxItem (nItem) := .t.
Form_1.Grid_1.Value:=nItem+1
Return Nil
ATENÇÃO: não testei, mas acho que vai funcionar.

Abraços,

Marcar Grid e ir para Proxima coluna

Enviado: 16 Nov 2015 15:54
por Nascimento
Amigo da erro justamente na linha da on key
sim devo te esquecido estou usando a minigui extended
se troco a "VK_X" por ESCAPE funciona mais preciso que seja o tal do "X" :%
ON KEY.jpg

Marcar Grid e ir para Proxima coluna

Enviado: 16 Nov 2015 17:10
por Toledo
Amigo, troque o comando ON KEY por este:

Código: Selecionar todos

ON KEY X OF Form_1 ACTION {|| SuaFuncao()} TO lRet
Abraços,

Marcar Grid e ir para Proxima coluna

Enviado: 24 Nov 2015 11:51
por rubens
Bom dia Toledo...

No grid a barra de espaço parece que é padrão para selecionar uma linha né...? não vi nenhum on key no código.

Eu preciso fazer isso num browse. mas não encontrei nenhuma informação no help da minigui.

Para definir o escape para fazer algo faço assim:
ON KEY ESCAPE ACTION ThisWindow.Release

E para definir barra de espaço?
Tentei
ON KEY SPACE ACTION ThisWindow.Release
ON KEY SPACEBAR ACTION ThisWindow.Release

e deu erro na compilação

Obg
Rubens

Marcar Grid e ir para Proxima coluna

Enviado: 24 Nov 2015 12:55
por Toledo
rubens escreveu:E para definir barra de espaço?
Tentei
ON KEY SPACE ACTION ThisWindow.Release
ON KEY SPACEBAR ACTION ThisWindow.Release
Faltou tentar... ON KEY BACK ACTION ThisWindow.Release

Abraços,

Marcar Grid e ir para Proxima coluna

Enviado: 24 Nov 2015 12:59
por Toledo
Ops... tecla errada... BACK é a BackSpace.

Vou fazer um teste e depois eu volto.

Abraços,

Marcar Grid e ir para Proxima coluna

Enviado: 24 Nov 2015 15:09
por Toledo
Amigo, não existe nenhum ON KEY para a Barra de Espaço. Quando no grid existe um CheckBox, a barra de espaço já é usada para marcar/desmarcar o CheckBox da linha selecionada.

Abraços,

Marcar Grid e ir para Proxima coluna

Enviado: 24 Nov 2015 19:49
por rubens
Obrigado... Toledo... imaginei isso mesmo... porque na relação do hmgs não tem on key para barra de espaço... vou definir outra tecla ou deixa no enter..

Obg

Rubens

Marcar Grid e ir para Proxima coluna

Enviado: 29 Fev 2016 11:51
por Nascimento
Amigo(s) com checkbox nao deu muito certo no meu caso , entao como fazer no mesmo estilo colocar um "X" na coluna Marcar e ir para a proxima

tentei

Form_1.Grid_1.Item (1) := "X" , mais nao deu certo

Marcar Grid e ir para Proxima coluna

Enviado: 29 Fev 2016 13:40
por Toledo
Amigo, seria algo assim:

Código: Selecionar todos

Func SuaFuncao()
nItem:=Form_1.Grid_1.Value
Form_1.Grid_1.Cell(nItem,1) := "X"
Form_1.Grid_1.Value:=nItem+1
Return Nil
Abraços,

Marcar Grid e ir para Proxima coluna

Enviado: 29 Fev 2016 14:10
por Nascimento
isso mesmo obg caro amigo , Resolvido