您好,欢迎来到五一七教育网。
搜索
您的当前位置:首页在delphi xe7中怎样运行android模拟机,在Delphi XE7中第二次在Android上打开表单时发......

在delphi xe7中怎样运行android模拟机,在Delphi XE7中第二次在Android上打开表单时发......

来源:五一七教育网

更新资料

尽管我的建议已记录在案,但Android和多种形式仍然存在问题.请参阅本文后面的内容.

根本不要调用DisposeOf()或Free. FormClose()和caFree调用是使其工作的关键.

FireMonkey架构师现在已经为此努力了多个版本,终于可以使用了.

来自doc的示例如何创建模式对话框:

procedure MyCurrentForm.MyButtonClick(Sender: TObject);

var

dlg: TMyModalForm;

begin

// Create an instance of a form.

dlg := TMyModalForm.Create(nil);

// Configure the form. For example, give it a display name.

dlg.Caption := 'My Modal Dialog Box';

// Show your dialog box and provide an anonymous method that handles the closing of your dialog box.

dlg.ShowModal(

procedure(ModalResult: TModalResult)

begin

// Do something.

end

);

end;

并释放您的模式对话框:

procedure TMyModalForm.FormClose(Sender: TObject; var Action: TCloseAction);

begin

Action := TCloseAction.caFree;

end;

更新资料

OP尝试了此解决方案,但无法正常工作.

调查质量控制时,有报告声称这在移动android平台上无法正常工作:

(您必须登录才能访问它们).

后者解释了正在发生的事情.当模态形式被破坏时,FFocusedControl可能指向被破坏的控件.当ARC试图释放FFocusedControl时,这将导致分段错误. FFocusedControl必须声明为[弱].有关更多详细信息,请参见RSP-9665.

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 517ttc.cn 版权所有 赣ICP备2024042791号-8

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务