Interface básica com diálogos, SAY, GET e botões
DEFINE MSDIALOG → @ SAY / GET / BUTTON → ACTIVATE MSDIALOGConstrói uma tela simples sem acoplar edição a gravação.
Visão geral
O exemplo cria MSDialog, rótulo SAY, campo GET ligado a variável local e botão de fechamento. O conteúdo do GET é atualizado ao perder foco; antes de operações reais, validar o estado efetivo da edição. Fechar o diálogo não significa confirmar ou gravar dados. As coordenadas são ilustrativas em pixels. (Fontes: refs. 1–4.)
Sintaxe
DEFINE MSDIALOG → @ SAY / GET / BUTTON → ACTIVATE MSDIALOGExemplo comentado
#Include "Protheus.ch"
User Function Ed492()
Local oDlg,oSay,oGet,oBtn
Local cText := Space(20)
DEFINE MSDIALOG oDlg TITLE "Tela de teste" FROM 0,0 TO 160,360 PIXEL
@ 12,12 SAY oSay PROMPT "Texto:" SIZE 50,10 OF oDlg PIXEL
@ 12,65 GET oGet VAR cText SIZE 100,12 OF oDlg PIXEL
// Somente encerra a janela; nao grava dados.
@ 45,65 BUTTON oBtn PROMPT "Fechar" SIZE 55,15 OF oDlg PIXEL ACTION oDlg:End()
ACTIVATE MSDIALOG oDlg CENTERED
Return NilTela editável em memória com fechamento explícito. Em revisão: exemplo editorial não compilado nem executado em Protheus. Conferir includes, release, RDD e contexto antes de homologar.
- Conferir expansão dos comandos nos includes do release e testar navegação por teclado e fechamento.
- Em revisão: exemplo editorial não compilado nem executado em Protheus. Conferir includes, release, RDD e contexto antes de homologar.

Comentários
Ainda não há comentários aprovados.
Entre com Google ou Microsoft para comentar.