Entrar

Exemplo de código mostra como gerenciar os botões de navegação

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

123967
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Sumário
Ao criar uma tela, a maioria dos desenvolvedores precisará adicionar botões de navegação para percorrer o banco de dados. Facilmente você pode colocar um botão de ação em uma tela para encaminhar um registro, mas você também precisa controlar o comportamento do botão quando atingir o início ou fim de um banco de dados.

Por exemplo, se o usuário navegar através de uma tabela e atingir o final da tabela, você pode desejar ter próximo e inferior botões desativado. Da mesma forma, quando o usuário atingir parte superior da tabela, deseja ter a parte superior e anterior botões desativado. Este artigo mostra pelo exemplo de como fazer isso.
Mais Informações
O exemplo de código neste artigo move o ponteiro antes ou após o registro seguinte ou anterior, que você realmente deseja exibir, assim, permitindo que você testar condições BOF() e EOF() e ter seu programa responda adequadamente por desativando ou ativando os botões apropriados.

Amostra de código

Observação: Embora esse código pode servir como uma base sólida para uso em seu próprio trabalho, é não necessariamente a somente ou melhor forma de tratamento de botões. Em sua forma presente, o código não verifica o status de um registro para ver se ele é excluído. Se excluído é OFF (padrão), esse código tem o potencial de misbehave, portanto, você precisará procurar e lidar com registros excluídos e outros tipos de exceções.

Convém adicione código para o trecho de código de cláusula "Quando", ou "Na tela Entry" porque "Top" e "Anterior" não são válidas no início de um banco de dados. Talvez você precise adicionar este código:
   && Disable Top and Prior buttons on startup.   SHOW GET Buttnvar,1 DISABLE   && Disable "Top"   SHOW GET Buttnvar,2 DISABLE   && Disable "Prior"				
colocar o código a seguir na cláusula válida de seu botão matriz e altere o nome da variável "Buttnvar" para o nome da variável, na verdade, você está usando:
DO CASE  CASE Buttnvar = 1         && 'TOP' button    GO TOP    SCATTER MEMVAR    SHOW GET Buttnvar,1 DISABLE   && Disable "Top"    SHOW GET Buttnvar,2 DISABLE   && Disable "Prior"    IF (RECCOUNT() > 1)      SHOW GET Buttnvar,3 ENABLE  && Enable  "Next"      SHOW GET Buttnvar,4 ENABLE  && Enable  "Bottom"    ELSE      SHOW GET Buttnvar,3 DISABLE   && Disable "Next"      SHOW GET Buttnvar,4 DISABLE   && Disable "Bottom"    ENDIF    SHOW GETS    WAIT WINDOW "At first record" TIMEOUT 1    _CUROBJ = OBJNUM(Buttnvar)+3  && Transfer focus to "Next" button  CASE Buttnvar = 2         && 'PRIOR' button    SKIP - 1    IF NOT BOF()      SCATTER MEMVAR    ELSE      WAIT WINDOW "At first record" TIMEOUT 1      SHOW GET Buttnvar,1 DISABLE   && Disable "Top"      SHOW GET Buttnvar,2 DISABLE   && Disable "Prior"    ENDIF    IF (RECCOUNT() > 1)      SHOW GET Buttnvar,3 ENABLE  && Enable  "Next"      SHOW GET Buttnvar,4 ENABLE  && Enable  "Bottom"    ELSE      SHOW GET Buttnvar,3 DISABLE   && Disable "Next"      SHOW GET Buttnvar,4 DISABLE   && Disable "Bottom"    ENDIF    SHOW GETS  CASE Buttnvar = 3         && 'NEXT' button    IF  NOT EOF()      SKIP 1    ENDIF     IF  EOF()      SKIP - 1      WAIT WINDOW "At last record" TIMEOUT 1      SHOW GET Buttnvar,3 DISABLE   && Disable "Next"      SHOW GET Buttnvar,4 DISABLE   && Disable "Bottom"    ELSE      SHOW GET Buttnvar,1 ENABLE  && Enable  "Top"      SHOW GET Buttnvar,2 ENABLE  && Enable  "Prior"      SCATTER MEMVAR    ENDIF    SHOW GETS  CASE Buttnvar = 4         && 'BOTTOM' button    GO BOTTOM    SCATTER MEMVAR    SHOW GET Buttnvar,3 DISABLE   && Disable "Next"    SHOW GET Buttnvar,4 DISABLE   && Disable "Bottom"    IF (RECCOUNT() > 1)      SHOW GET Buttnvar,1 ENABLE  && Enable  "Top"      SHOW GET Buttnvar,2 ENABLE  && Enable  "Prior"    ELSE      SHOW GET Buttnvar,1 DISABLE   && Disable "Top"      SHOW GET Buttnvar,2 DISABLE   && Disable "Prior"    ENDIF    _CUROBJ = OBJNUM(Buttnvar)+1  && Transfer focus to "Prior" button    SHOW GETS    WAIT WINDOW "At last record" TIMEOUT 1  CASE Buttnvar = 5      && 'QUIT' button    CLEAR READENDCASE				
você pode colocar o comando "Show obtém" no final da instrução CASE. No entanto, às vezes, ele fornece uma resposta snappier quando colocados no final de uma determinada instrução.
VFoxWin FoxWin FoxMac FoxDos

Warning: This article has been translated automatically

Propriedades

ID do Artigo: 123967 - Última Revisão: 02/21/2014 23:01:37 - Revisão: 2.1

  • Microsoft Visual FoxPro 3.0 Standard Edition
  • Microsoft FoxPro 2.5b
  • Microsoft FoxPro 2.5a
  • Microsoft FoxPro 2.5b
  • Microsoft FoxPro 2.6 Standard Edition
  • Microsoft FoxPro 2.6a Standard Edition
  • Microsoft FoxPro 2.0
  • Microsoft FoxPro 2.5b for MS-DOS
  • Microsoft FoxPro 2.5a
  • Microsoft FoxPro 2.5b for MS-DOS
  • Microsoft FoxPro 2.6 for MS-DOS
  • Microsoft FoxPro 2.6a Standard Edition
  • Microsoft Visual FoxPro 2.5b para Macintosh
  • Microsoft Visual FoxPro 2.5c para Macintosh
  • Microsoft FoxPro 2.6a Professional Edition para Macintosh
  • kbnosurvey kbarchive kbmt kbcode KB123967 KbMtpt
Comentários