Jump to content


Photo

Messagedlg no mobile

Messagedlgmobile

  • Please log in to reply
4 replies to this topic

#1 Ken_Sowyer

Ken_Sowyer

    Newbie

  • Members
  • Pip
  • 8 posts
  • LocationBrazil

Posted 30 June 2017 - 05:53 PM

Olá!
 
Uma dúvida:
 

Alguém conseguiu fazer funcionar no mobile o MessageDlg dessa forma:

if MessageDlg('Message',mtConfirmation, mbYesNo)=mrYes then
  begin
  ..............;
  end;
Ou só é possível mesmo chamando o callback? ex:
procedure TMainmForm.UnimButton2Click(Sender: TObject);
begin
  Messagedlg('Continuar?', mtConfirmation, mbyesno, DCallback1);
end;

procedure TMainmForm.DCallback1(Sender: TComponent; res: Integer);
begin
  case res of
    mrYes: ShowMessage('Clicou SIM');
    mrNo: ShowMessage('Clicou NÃO');
  end;
end;
Obrigado!
 
 

  • 0

#2 Marlon

Marlon

    Advanced Member

  • uniGUI Subscriber
  • PipPipPipPip
  • 324 posts
  • LocationNova Mutum - MT - Brasil

Posted 30 June 2017 - 06:13 PM

Olá Ken

 

utilize da seguinte forma:

MessageDlg('Continuar?',
    mtConfirmation,mbYesNo,procedure(Comp:TComponent; ARes: Integer)
    begin
      if Ares = mrYes then
      begin
        
      end;
    end
  );

  • 1

#3 Ken_Sowyer

Ken_Sowyer

    Newbie

  • Members
  • Pip
  • 8 posts
  • LocationBrazil

Posted 30 June 2017 - 06:59 PM

Marlon, muito obrigado, funcionou perfeitamente!

 

Mas no caso de haver código após a mensagem, esse é executado direto, ignorando a mesma... Há uma maneira de contornar isso? ex: O ShowMessage no final aparece antes da MessageDlg... 

MessageDlg('Continuar?',
    mtConfirmation,mbYesNo,procedure(Comp:TComponent; ARes: Integer)
    begin
      if Ares = mrYes then
      begin
        ShowMessage('Clicou sim');
      end;
    end
  );

//código fora da procedure independente da resposta 'Continuar?'.
ShowMessage('...'); 

Obrigado novamente!


  • 0

#4 Marlon

Marlon

    Advanced Member

  • uniGUI Subscriber
  • PipPipPipPip
  • 324 posts
  • LocationNova Mutum - MT - Brasil

Posted 30 June 2017 - 07:19 PM

Sim, existe uma outra forma:

UniMainModule -> EnableSynchronousOperations

na pasta samples do uniGui existe bastante material que respondem as suas dúvidas  ;)

 

C:\Program Files (x86)\FMSoft\Framework\uniGUI\Demos


  • 1

#5 Ken_Sowyer

Ken_Sowyer

    Newbie

  • Members
  • Pip
  • 8 posts
  • LocationBrazil

Posted 30 June 2017 - 08:18 PM

Beleza! Vou dar uma olhada nas demos...

Muito obrigado pela atenção!


  • 0




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users