GARANTIR DESCONTO

Fórum showmessage com os botões de yes e no mas, como sim e não #175942

19/08/2003

0

preciso fazer um showmessage com os botões de sim e não de forma que se o usuario clicar em sim ele execute uma função e se clicar em não execute outra função.


T+ pessoal


Machado

Machado

Responder

Posts

19/08/2003

Abueno_silva

Você pode utilizar o messagebox do application:

if Application.MessageBox(´<sua mensagem>´,´<titulo do box>´,mb_yesno + mb_iconquestion) = id_yes then
Begin
comandos para sim
End
else
Begin
comandos para nao
End;


Responder

Gostei + 0

19/08/2003

Machado

Ok assim como você passou funciona mas, eu queria entender o porque do ´if Application´.

Existe outra forma?


Responder

Gostei + 0

20/08/2003

Bacalhau

No site da borland (www.borland.com) existem os downloads das units CONTROL e DBCONTROL, responsáveis pela língua utilizada nesses diálogos.

Faz o dowload, edita essas units e verás que podem ser traduzidas muito mais mensagens do que as que perguntas.

Traduzes tudo o que quiseres, compilas os teus projectos com essas units e farás os teus clientes felizes para sempre

abraço do bacalhau


Responder

Gostei + 0

20/08/2003

Arc

Caro abueno_silva:

Eu utilizo o mesmo comando indicado por vc

´if Application.MessageBox(´<sua mensagem>´,´<titulo do box>´,mb_yesno + mb_iconquestion) = id_yes´ ...

Mas como ficariam os ifs se no lugar de [i:f788494a35][b:f788494a35]mb_yesno[/b:f788494a35][/i:f788494a35] eu colocasse mb_yesnocancel ...

Abraço

Édson[/u]


Responder

Gostei + 0

20/08/2003

Rafael Heise

seguinte.. Application é uma variável global da Unit Forms, para identificar a sua aplicação. Ela é criada sozinha e referencia sua aplicação. Essa variável Application é do tipo TApplication e possui diversas propriedades, eventos e procedimentos que são bem úteis... e no Help você pode ter um detalhamento maior dessa variável. Quando ao porque, é o seguinte:
Application é uma variável do tipo TApplication e a classe TApplication tem uma função chamada MessageBox que retorna um valor Cardinal, e que pode ser usadas as constantes indicando o botão clicado IDYES,YDNO,IDCANCEL e assim por diante. Quando você chama esta função e passa os parâmetros, a mensagem aparece e o resultado é o botão clicado. E por isso, é usado assim...
abraços


Responder

Gostei + 0

20/08/2003

Bacalhau

Isto são soluções tremendamente pesadas. Façam o download das units control e dbcontrol da Borland.

Não matem moscas com tanques de guerra!!


Responder

Gostei + 0

22/06/2015

Marcos Bug

Aqui o código

[code]procedure btnSimClick (Sender: TObject);
[code]begin
[code]  ShowMessageFmt('Titulo','Selecione a sua mensagem assim',mb_yesno + mb_iconquestion) = id_yes;
[code]end;
Responder

Gostei + 0

20/05/2017

Luis Fessel

Revivendo em 3, 2, 1...
Desculpa ai gente mas, procurando uma coisa, achei este post. Creio que, algumas coisas não ficaram bem claras por aqui.
A vantagem de utilizar o Application.MessageBox é que, como o Rafael Heise explicou, esta é uma função do APLICATIVO e, sendo assim, os textos dos botões e mensagens que serão utilizados serão puxados do aplicativo. Este, por sinal, puxa do sistema e, com isto, você terá seus textos sempre no mesmo idioma do S.O.
Caso você queira fixar os texto num determinado idioma, faça como o Bacalhau escreveu mas, não precisa baixar de lugar nenhum. Procure ns pastas de instalação do Delphi que estão lá. E, tem outras units que também podem ser traduzidas, na mesma pasta (não me lembro agora qual é), que permitirão que você traduza TUDO no seu sistema. Lembre-se de fazer uma cópia dos arquivos antes de traduzi-los pois, depois que fizer as kakas, fica difícil corrigir.
Quando você utiliza as outras funções, que não são funções de Application, elas buscam os textos nestas units e, dessa maneira, você pode fixar os textos no idioma desejado.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar