Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) como usar essa função?


vms

Pergunta

ola pessoal encontrei na net essa função que deixa uma caixa de messagem pessonalizada

o problema é que eu não to conseguindo usar, alguém pode dar uma dica?

Function Mensagem(Msg,Bt1,Bt2:String):Boolean;
 var
 I,K:Integer;
 F:TForm;
 begin
 K:=0;
 F:= createmessagedialog(Msg,mtconfirmation,[mbyes,mbno]);
 try
 for i:=0 to f.componentCount -1 do
 if f.components[i] is tbutton then
 with tbutton(f.components[i]) do
 case modalresult of
 mryes: Caption := Bt1;
 mrno: Caption := Bt2;
 end;
 f.caption := 'Mensagem do Sistema';
 K:=f.showmodal;
 finally
 if K = mryes then Result:=True
 else Result:=False;
 f.free;
 end;
 end;

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Primeiramente, vamos visualizar melhor este amontuado de linhas...:

Function Mensagem(Msg,Bt1,Bt2:String):Boolean;
var
  I,K:Integer;
  F:TForm;
begin
  K:=0;
  F:= createmessagedialog(Msg,mtconfirmation,[mbyes,mbno]);
  try
    for i:=0 to f.componentCount -1 do
      if f.components[i] is tbutton then
      with tbutton(f.components[i]) do
        case modalresult of
          mryes: Caption := Bt1;
          mrno: Caption := Bt2;
        end;
    f.caption := 'Mensagem do Sistema';
    K:=f.showmodal;
  finally
    if K = mryes then 
      Result:=True
    else 
      Result:=False;
    f.free;
  end;
end;
O que esta função faz é usar CreateMessageDialog para criar um form aos moldes das caixas de diálogos padrão, mas que viabiliza alterar o conteúdo dos componentes contidos nele (neste caso, o caption dos botões e o texto da mensagem). Ao ser mostrado o form e clicado em um dos botões o resultado de ShowModal será sempre mrYes ou mrNo. A resposta positiva é correspondente ao texto passado em Bt1, de modo que a função retorna True caso o Bt1 seja pressionado ou False se Bt2. Para usar:
if Mensagem('Confirma exclusão do cliente?', 'Confirmo', 'Não tenho certeza') then
begin
  // exclui o cliente....
end else
  ShowMessage('Voce ficou na dúvida e o cliente não foi excluído!');

parece que a finalidade básica desta função é a de evitar que sejam apresentadas as caixas de diálogo com o texto em inglês (é o que penso).

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0

Bom dia,

Não vejo a necessidade de criar uma função para mostrar mensagens ao usuário, visto que o Delphi possui o Application.MessageBox, que é possível alterar o caption do form, a mensagem do corpo e os botões possuem seu caption em português (Ok, Cancela, Sim, Não), podendo ser tratado da mesma forma que os demais. Procure no Help do Delphi por MessageBox.

[]'s

Link para o comentário
Compartilhar em outros sites

  • 0
Bom dia,

Não vejo a necessidade de criar uma função para mostrar mensagens ao usuário, visto que o Delphi possui o Application.MessageBox, que é possível alterar o caption do form, a mensagem do corpo e os botões possuem seu caption em português (Ok, Cancela, Sim, Não), podendo ser tratado da mesma forma que os demais. Procure no Help do Delphi por MessageBox.

beleza, disso eu não sabia.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...