![]() |
MessageDialog auf Android
Hallo Leute,
ich schreibe gerade mein erstes Programm mit Firemonkey. Nachdem ich mit XE5 so viele Probleme hatte bin ich auf Delphi 10.3 umgestiegen. Habe Windows 10 und Handy Sony Xperia. Nun zu meinem Problem: Früher benutzte ich JaNein:=messagedlg('Programm-Ende ?', TMsgDlgType.mtConfirmation, [TMsgDlgBtn.mbYes, TmsgDlgBtn.mbNo], 0); Das ist aber veraltet und nach Recherge benutze ich jetzt (mit FMX.DialogService) markieren Delphi-Quelltext
Delphi-Quellcode:
Aber auf dem Handy wird die MessageDialogBox nicht angezeigt.
var MR: TModalResult;
…… MR := mrNone; TDialogService.MessageDialog('Programm-Ende ?', System.UITypes.TMsgDlgType.mtConfirmation, [System.UITypes.TMsgDlgBtn.mbYes, System.UITypes.TMsgDlgBtn.mbNo], System.UITypes.TMsgDlgBtn.mbYes, 0, Procedure(Const AResult: System.UITypes.TModalResult) Begin MR:=AResult; End); While MR = mrNone Do begin Application.ProcessMessages; end; Und deshalb kommt das Programm aus der WHILE-Schleife nicht raus. (ich kann ja keinen Ja/Nein Button drücken). Kann mir da jemand einen Tipp geben? Danke und Gruß Jürgen |
AW: MessageDialog auf Android
Android und iOS kann diese Art von Dialogen nicht (Modal vs. NonModal). Ich habe mir eigene Dialoge gebaut, die sich über die Anwendung "legen", wo ich dann meine Fragen stelle.
|
AW: MessageDialog auf Android
Zitat:
|
AW: MessageDialog auf Android
Philipp,
kannst du mir mal ein Beispiel zu kommen lassen, von deiner Dialogbox? Danke und Gruß Jürgen |
AW: MessageDialog auf Android
Zumindest kann man nicht so ohne weiteres mit den Dialogen arbeiten, weil man der Code nicht wie unter Windows wartet.
Es ist also einiges an Umstellungsaufwand notwendig und v.a. muss für den User klar sein, wo er sich befindet. Ich nutze daher Panels und zeige dann nur noch das Frage-Panel an und wenn die Antwort gegeben wurde, steige ich wieder in den gewünschten Folgecode ein. Die Methode, die das Fragepanel aufgerufen hat, wird aber direkt beendet, damit nichts klemmt. Ich hoffe damit wird es etwas klarer. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz