4D v16.3

DIALOG

Página Inicial

 
4D v16.3
DIALOG

DIALOG 


 

DIALOG ( {tabela ;} formulario {; *} ) 
Parâmetro Tipo   Descrição
tabela  Tabela in Tabela a qual pertence o formulário ou se omitida: tabela por padrão ou uso do formulário de projeto
formulario  String in Nome de tabela ou formulário de projeto a mostrar como diálogo
Operador in Utilizar o mesmo processo

O comandoDIALOG apresenta o formulário formulario ao usuário. Este comando se utiliza com frequência para obter informação do usuário através do uso de variáveis ou para apresentar informação al usuário, como opções para realizar una operação.

É comum apresentar o formulário dentro de uma janela criada pelo comando Open window.

Este é um exemplo típico de um diálogo:

Utilize DIALOG ao invés de ALERT, CONFIRM ou Request quando a informação que deve ser apresentada ou reunida é mais complexa do que esses comandos podem manejar.

Nota: é possível proibir a entrada de dados em campos ou caixas de diálogo (e limitar a entrada de dados a variáveis unicamente) utilizando uma opção nas Preferências de 4D (página Compatibilidade). Esta restrição corresponde ao funcionamento de versões anteriores de 4D.

A diferença de ADD RECORD ou MODIFY RECORD, DIALOG não utiliza o formulário de entrada atual. Você deve especificar o formulário (formulário projeto ou formulário tabela) a utilizar no parâmetro formulario. Igualmente, o painel de botões não é utilizado automaticamente se os botões são omitidos. Neste caso, só a tecla Esc lhe permitirá sair do formulário.

O diálogo é aceito se o usuário clicar no botão Aceitar ou pressionar a tecla Enter (teclado numérico) ou se é executado o comando ACCEPT.
Lembre que a validação não faz com que os dados modificados sejam guardados. Se o diálogo inclui campos, deve chamar explicitamente ao comando SAVE RECORD para guardar os dados que tenham sido modificados.

O diálogo é cancelado se o usuário clicar no botão Cancelar ou pressionar a tecla de anulação Esc ou se são executa o comando CANCEL.

Se passar o parâmetro opcional *, o formulário é carregado e mostra na última janela do processo atual e o comando termina sua execução enquanto deixa o formulário ativo em tela.

Este formulário logo reage "normalmente" as ações do usuário e é fechado quando o código 4D relacionado com o formulário (método de objeto ou método de formulário) chama ao comando CANCEL ou ACCEPT Se o processo atual termina, os formulários criados desta forma são fechados automaticamente da mesma forma que se tivesse chamado o comando CANCEL. Este modo de abertura é particularmente útil para mostrar uma palheta flutuante com um documento, sem necessidade de outro processo.

Notas:

  • deve criar uma janela antes de chamar a instrução DIALOG("form";*); se não for possível utilizar a janela de diálogo atual no processo nem a janela criada por padrão para cada processo. Do contrário, se gera o erro -9909.
  • Quando for utilizado o parâmetro *, a janela é fechada automaticamente depois de uma ação padrão ou uma chamada ao comando CANCEL ou ACCEPT. Não tem que gerenciar o fechamento da própria janela.

O exemplo a seguir mostra o uso do comando DIALOG para especificar os critérios de pesquisa. Um formulário personalizado que contém as variáveis vNombre e vEstado lhe permite ao usuário introduzir os critérios de pesquisa.

 Open window(10;40;370;220) ` Abrir uma janela modal
 DIALOG("Diálogo de pesquisa") ` Mostrar o diálogo de pesquisa
 CLOSE WINDOW ` Não necessita mais a janela modal
 If(OK=1) ` Se aceitar o diálogo
    QUERY([Empresa];[Empresa]Nome=vNome;*)
    QUERY([Empresa];&;[Empresa]Estado=vEstado)
 End if

O exemplo a seguir pode ser usado para criar uma palheta de ferramentas

  `Mostra a palheta de ferramentas
 $palette_window:=Open form window("tools";Palette form window)
 DIALOG("tools";*) `Devolva o controle imediatamente
  `Mostra janela do documento principal
 $document_window:=Open form window("doc";Standard form window)
 DIALOG("doc")

Depois de chamar a DIALOG, se o diálogo é aceito, a variável sistema OK toma o valor 1; se for cancelado toma o valor 0.



Ver também 

ACCEPT
ADD RECORD
CANCEL
Open window

 
PROPRIEDADES 

Produto: 4D
Tema: Entrada de Dados
Número 40

Este comando modifica a variável sistema OKEste comando modifica a variável sistema Error

 
HISTÓRIA 

Modificado: 4D v11 SQL

 
ARTICLE USAGE

Manual de linguagem 4D ( 4D v16)
Manual de linguagem 4D ( 4D v16.1)
Manual de linguagem 4D ( 4D v16.2)
Manual de linguagem 4D ( 4D v16.3)