Fórum Dúvida com MessageDlg #418237
08/06/2012
0
Eu criei um procedimento para retornar mensagnes padronizadas e para isso utilizei o MessageDlg.
Em alguns casos eu preciso que o cursor fique posicionado no botão Não (No), pois o padrão é ficar posicionado no botão Sim (Yes).
Existe alguma forma ou outro tipo de caixa de mensagens que eu possa fazer isso?
Agradeço desde já qualquer ajuda...
Vagner Almeida
Curtir tópico
+ 0Posts
08/06/2012
Marco Salles
function CreateMessageDialog(const Msg: string; DlgType: TMsgDlgType;
Buttons: TMsgDlgButtons; DefaultButton: TMsgDlgBtn): TForm;
da uses dialogs
exemplo
unit uMensagemDlgPerson;
interface
function mensagemDlgYesTo(corpo: string): integer;
implementation
uses
Messages,Dialogs,forms , StdCtrls;
function mensagemDlgYesTo(corpo: string): integer;
var
mensagem:TForm;
begin
mensagem := CreateMessageDialog(corpo, mtConfirmation, [mbYes, mbNo],mbNo);
//caso queira mudar o caption dos buttoes
(mensagem.FindComponent(YES) as TButton).Caption := Sim;
(mensagem.FindComponent(NO) as TButton).Caption := Não;
result := mensagem.ShowModal;
end;
de uses a esta unidade e uses
if mensagemDlgYesTo(Mensagem) = Idyes then
showmessage(Blz!!)
else
showmessage(não funcionou);
Gostei + 0
08/06/2012
Marco Salles
A unidade que escrevi anteriormente serve caso voce queira persornalizar algumas opçoes no Form ou nos controles
Porém para dar foco ao Botão especifico , basta utilizar a sobrecarga
if MessageDlg(ola,mtConfirmation,[mbYes,mbNo],0,mbNo) = mrYes then
Showmessage(sim)
else
Showmessage(não);
Gostei + 0
09/06/2012
Vagner Almeida
Gostei + 0
09/06/2012
Marco Salles
[]sds
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)