Abrangências: | Microsiga Protheus 8.11 , Protheus 10 |
Versões: | Microsiga Protheus 8.11 , Protheus 10 |
Compatível Países: | Todos |
Sistemas Operacionais: | Todos |
Compatível às Bases de Dados: | Todos |
Nível de Acesso: | Nível 1 (Acesso Clientes) |
Idiomas: | Espanhol , Inglês |
Executa um menu pop-up.
VTAchoice - Executa um menu pop-up ( nTopo nEsquerda nBase nDireita acItensMenu [ alItensSelecionaveis ] [ cFuncaoUsuario ] [ nItemInicial ] [ lNaoBranco ] [ lMsg ] [ nLinhaJanela ] ) --> nPosicao
-
nPosicao(numerico)
- Retorna a posição numérica ocupada pelo item de menu selecionado no vetor acItensMenu. Se o processo de seleção for interrompido, retorna zero.
Tipo: TELNET VT100
Função de usuário:
Da mesma forma que as demais funções de interface com o usuário, VTACHOICE() aceita uma função de usuário. A função de usuário é especificada quando se deseja aninhar invocações da função VTACHOICE() para criar menus hierárquicos ou redefinir teclas.
Modos de VTACHOICE()
0 - Inativo
1 - Tentativa de passar início da lista
2 - Tentativa de passar final da lista
3 - Normal
4 - Itens não selecionados
Após ter executado as operações apropriadas ao modo VTACHOICE(), a função de usuário deve retornar um valor que solicite ao VTACHOICE() executar uma operação entre o seguinte conjunto de ações:
Valores de Retorno da Função de Controle de VTACHOICE()
0 - Aborta seleção
1 - Executa seleção
2 - Continua VTACHOICE()
3 - Vai para o próximo item cuja primeira letra é a tecla pressionada
acMenuItens := {"Um","Dois","-----","Tres"}alSelectableItens := {.T.,.T.,.F.,.T.} nPosition := VTACHOICE(0, 0, 7, 19, acMenuItens, alSelectableItens,"TesteCtrl" ) Function TesteCtrl(nModo,nElem,nElemW) If nModo == 1 VtAlert('Top') ElseIf nModo == 2 VtAlert('Bottom') Else If VTLastkey() == 27 VtAlert('Sair') VTBeep(3) Return 0 ElseIf VTLastkey() == 13 VtAlert('Ok') VtBeep(1) Return 1 EndIf EndIfReturn 2
Nome | Tipo | Descrição | Default | Obrigatório | Referência | ||||||||||||
nTopo | Numérico | Define a coordenada do canto superior da janela. Valores de linha e coluna podem variar entre 0, 0 e VTMAXROW(), VTMAXCOL(). | X | ||||||||||||||
nEsquerda | Array of Record | Define a coordenada do canto superior da janela. Valores de linha e coluna podem variar entre 0, 0 e VTMAXROW(), VTMAXCOL(). | X | ||||||||||||||
nBase | Array of Record | Define a coordenada do canto inferior da janela. Valores de linha e coluna podem variar entre 0, 0 e VTMAXROW(), VTMAXCOL(). | X | ||||||||||||||
nDireita | Array of Record | Define a coordenada do canto direito da janela. Valores de linha e coluna podem variar entre 0, 0 e VTMAXROW(), VTMAXCOL(). | X | ||||||||||||||
acItensMenu | Array of Record | Vetor que contém as cadeias de caracteres que serão exibidas como itens de menu. Cada item de menu será mais tarde identificado por meio de sua posição numérica nesse vetor. | X | ||||||||||||||
alItensSelecionaveis | Array of Record | Vetor paralelo de valores lógicos, diretamente relacionados à acItensMenu que especifica os itens do menu que poderão ser selecionados. Os elementos podem ser valores lógicos ou cadeias de caracteres. Caso seja uma cadeia de caracteres, o elemento é avaliado como uma expressão macro que deverá retornar um tipo de dado lógico. Em ambos os casos, um valor falso (.F.) significa que o item de menu correspondente não está disponível, e um valor verdadeiro (.T.) significa que está disponível. | |||||||||||||||
cFuncaoUsuario | Array of Record | Nome de uma função definida pelo usuário que é executada quando uma tecla não reconhecida for pressionada. O nome da função é especificado como uma expressão caracter sem parênteses ou argumentos. Note que o comportamento de VTACHOICE() é afetado pela presença desse argumento. Consulte as observações para mais informações. | |||||||||||||||
nItemInicial | Array of Record | Posição ocupada no vetor de acItensMenu pelo item que aparecerá em destaque quando o menu for exibido pela primeira vez. Caso especifique um item de menu que não esteja disponível, ou caso não utilize argumento algum, o item que aparecer em destaque será o primeiro item selecionável do vetor. | |||||||||||||||
lNaoBranco | Array of Record | Se verdadeiro, as opções do menu serão montadas conforme o tamanho da opção, desconsiderando os espaços em branco à direita e à esquerda. Se falso ou omitido, as opções do menu serão montadas conforme a dimensão da tela do VTACHOICE definida em nEsquerda e nDireita. | |||||||||||||||
lMsg | Array of Record | Conteúdo tem que ser NIL, parâmetro reservado para implementação futura. | |||||||||||||||
nLinhaJanela | Array of Record | É o número da linha da janela na qual o item de menu inicial aparecerá. |