Delphi Can
Uygulama Kapatırken Uyarı Vermesi - Baskı Önizleme

+- Delphi Can (https://www.delphican.com)
+-- Forum: Delphi (https://www.delphican.com/forumdisplay.php?fid=3)
+--- Forum: Mobil Platform - FireMonkey (FMX) (https://www.delphican.com/forumdisplay.php?fid=7)
+--- Konu Başlığı: Uygulama Kapatırken Uyarı Vermesi (/showthread.php?tid=5959)

Sayfalar: 1 2


Cvp: Uygulama Kapatırken Uyarı Vermesi - 41linea41 - 01-05-2021

(01-05-2021, Saat: 21:48)OmerAsaf Adlı Kullanıcıdan Alıntı:
(01-05-2021, Saat: 17:04)tmrksmt Adlı Kullanıcıdan Alıntı: Bilmiyorum size ne ölçüde referans olabilir ama ben Android uygulamalarımda aşağıdaki gibi kullanıyorum;

procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word; var KeyChar: Char;
 Shift: TShiftState);

var
 FService : IFMXVirtualKeyboardService;
begin
 if Key = vkHardwareBack then
 begin
   TPlatformServices.Current.SupportsPlatformService(IFMXVirtualKeyboardService, IInterface(FService));
   if (FService <> nil) and (TVirtualKeyboardState.Visible in FService.VirtualKeyBoardState) then
   begin
     // Back button pressed, keyboard visible, so do nothing...
   end else
   begin
     Key := 0;
     // Back button pressed, keyboard not visible or not supported on this platform, lets exit the app...
     MessageDlg('Exit Application?', TMsgDlgType.mtConfirmation, [TMsgDlgBtn.mbOK, TMsgDlgBtn.mbCancel], -1, OnCloseDialog);
   end;
 end;
end;

NOT : Uses'e FMX.VirtualKeyboard eklemeyi unutmayın!

Merhabalar,

OnCloseDialog cümlesine takıldı. Bu nedir? Bilgi verir misiniz.
@tmrksmt  bu kısımda kendi procedure atıfta bulunmuş. Hata veren yeri "nil" olarak değiştirebilirsiniz.


Uygulama Kapatırken Uyarı Vermesi - mcuyan - 02-05-2021

Merhabalar
@41linea41 ben onay kullanımına örnek vermiştim orada.

Kapatma esnasında onay almak için:


procedure TForm3.FormKeyUp(Sender: TObject; var Key: Word; var KeyChar: Char;
 Shift: TShiftState);
begin
 if (Key = vkHardwareBack) then
 begin
   Key := 0;
   FMX.Dialogs.MessageDlg('Do you want to Exit?',
     TMsgDlgType.mtConfirmation, [TMsgDlgBtn.mbYes, TMsgDlgBtn.mbNo], 0,
     procedure(const AResult: TModalResult)
     begin
       if AResult = mrYes then
         Close;
     end);
 end;
end;



Uygulama Kapatırken Uyarı Vermesi - OmerAsaf - 02-05-2021

Teşekkürler.

Sorun Çözüldü.