FMX.Dialogs.InputQuery

Aus Appmethod Libraries
Wechseln zu: Navigation, Suche

Object Pascal

function InputQuery(const ACaption: string; const APrompts: array of string; var AValues: array of string; const ACloseQueryFunc: TInputCloseQueryFunc = nil): Boolean;
function InputQuery(const ACaption: string; const APrompts: array of string; var AValues: array of string; const ACloseQueryEvent: TInputCloseQueryEvent; AContext: TObject = nil): Boolean;
function InputQuery(const ACaption, APrompt: string; var Value: string): Boolean;
procedure InputQuery(const ACaption: string; const APrompts: array of string; const ADefaultValues: array of string; const ACloseQueryProc: TInputCloseQueryProc);

C++

extern DELPHI_PACKAGE bool __fastcall InputQuery(const System::UnicodeString ACaption, System::UnicodeString const *APrompts, const int APrompts_High, System::UnicodeString *AValues, const int AValues_High, const _di_TInputCloseQueryFunc ACloseQueryFunc = _di_TInputCloseQueryFunc())/* overload */;

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
function public
FMX.Dialogs.pas
FMX.Dialogs.hpp
FMX.Dialogs FMX.Dialogs


Beschreibung

Zeigt ein Dialogfeld an, das mehrere Eingabefelder enthält.

Mit InputQuery können Sie ein Dialogfeld anzeigen, das entsprechend der Anzahl der Strings in <APrompts> mehrere TEdit-Steuerelemente enthält.

InputQuery erwartet die folgenden Parameter:

  • <ACaption> repräsentiert den Titel des Dialogfeldes.
  • <APrompts> repräsentiert die Beschriftungen links neben den TEdit-Steuerelementen.
  • <AValues> oder <ADefaultValues> sind die Standardtextwerte für die TEdit-Steuerelemente.
  • <ACloseQueryProc> ist eine anonyme Methode, die beim Schließen des Dialogfeldes InputQuery ausführt.
Hinweis: <AValues> muss länger oder gleich lang wie <APrompts> sein.

Wenn der Benutzer auf die Schaltfläche OK klickt, gibt InputQuery True zurück; ansonsten gibt InputQuery False zurück. Wenn Sie den Parameter <ACloseQueryProc> angeben, gibt InputQuery keinen Wert zurück; das an die Methode <ACloseQueryProc> übergebene Argument <AResult> gibt an, auf was der Benutzer geklickt hat.

Die in die Eingabefelder des Dialogfeldes eingegebenen Werte werden in <AValues> gespeichert. Wenn Sie den Parameter <ACloseQueryProc> angeben, übergibt InputQuery die Werte stattdessen an die Methode <ACloseQueryProc>.

Wenn im Aufruf von InputQuery der Parameter <ACloseQueryProc> nicht enthalten ist, wird der Aufruf auf allen Plattformen blockiert; d. h., InputQuery kehrt erst zurück, wenn das Dialogfeld geschlossen wird. Android unterstützt keine blockierenden Aufrufe; Sie können InputQuery unter Android nur verwenden, wenn Sie den Parameter <ACloseQueryProc> angeben.

Aufrufe von InputQuery, die den Parameter <ACloseQueryProc> enthalten, werden auch auf Desktop-Plattformen blockiert, nicht jedoch auf mobilen Plattformen. D. h., dass auf mobilen Plattformen Quelltext, der sich nach einem Aufruf von InputQuery befindet, ausgeführt wird, bevor das Dialogfeld geschlossen wird. Wenn Sie nach dem Schließen des Dialogfeldes Quelltext ausführen müssen, verwenden Sie den Parameter <ACloseQueryProc> von InputQuery, um eine anonyme Methode zu definieren, die diesen Code ausführt. Siehe:

Plattformunterstützung

Die folgende Tabelle enthält eine Übersicht über die Unterstützung von Aufrufen von InputQuery auf der jeweiligen Plattform und ob diese Aufrufe blockierend oder nicht blockierend sind:

Plattform Ohne <ACloseQueryProc> Mit <ACloseQueryProc>
Windows Blockierend Blockierend
Mac OS X Blockierend Blockierend
iOS Blockierend Nicht blockierend
Android Nicht blockierend

Siehe auch