Я использую простой вызов TDialogServiceAsync.InputQuery()
с одним входом. Он просто игнорирует как кнопку Cancel
, так и кнопку закрытия окна X
.
Но кнопка Ok
работает нормально.
Это мой код:
uses
FMX.DialogService.Async;
procedure TForm1.Button1Click(Sender: TObject);
begin
TDialogServiceAsync.InputQuery('Title',
['Insert value'], ['bla bla'],
procedure(const AResult: TModalResult; const AValues: array of string)
begin
if Aresult = mrOk then
ShowMessage('Ok!');
if Aresult = mrCancel then
ShowMessage('Cancel!'); // this is never called
end);
end;
Если я нажму Cancel
, окно InputQuery не закроется, и моя процедура обратного вызова не будет вызвана.
Как я могу закрыть форму InputQuery при нажатии кнопки Cancel
?
Я использую RADStudio 10.1 Берлин.
Редактировать:
Я сделал несколько тестов:
- В 32-разрядной версии Windows кнопка отмены НЕ работает
- В 64-разрядной версии Windows кнопка отмены НЕ работает
- В 64-разрядной версии iOS кнопка отмены работает корректно
- На 32-битной версии Android кнопка отмены работает корректно