XE 执行了一个MessageDlg为什么会报错

YueLingYueLiang 2014-10-19 12:15:21
unit Unit1;

interface

uses
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.fmx}

procedure TForm1.Button1Click(Sender: TObject);
begin
if MessageDlg('是否退出?',
TMsgDlgType.mtConfirmation,
[TMsgDlgBtn.mbOK, TMsgDlgBtn.mbCancel],
-1) = mrOK then
showmessage('ok')
else
showmessage('NO')
end;

end.

-1 或者0都一样

点击后报错:Blocking dialogs not implemented on this platform
...全文
413 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
haitao 2014-10-31
  • 打赏
  • 举报
回复
fmx的对话框,标题 怎么无法传入了? 无论MessageDlgPosHelp还是MessageDlg。。。 一般对话框都是 【标题,提示信息,按钮们】 是需要定制的 怎么fmx的开发者都把 标题 给漏了呢? ——难道他们都没做过win32应用开发??
haitao 2014-10-29
  • 打赏
  • 举报
回复
引用 1 楼 YueLingYueLiang 的回复:
手机环境会,电脑不会
手机应用无法使用showmodal
缘中人 2014-10-29
  • 打赏
  • 举报
回复
MessageDlg('Choose a button:', System.UITypes.TMsgDlgType.mtInformation,
    [
      System.UITypes.TMsgDlgBtn.mbYes,
      System.UITypes.TMsgDlgBtn.mbNo,
      System.UITypes.TMsgDlgBtn.mbCancel
    ], 0,
    procedure(const AResult: TModalResult)
    begin
      if AResult = mrYES then
         ShowMessage('You chose Yes') else
      if AResult = mrNo then
         ShowMessage('You chose No') else
      if AResult = mrCancel then
         ShowMessage('You chose Cancel');
    end);
刚测试了这样写确实好了!
hzg98 2014-10-27
  • 打赏
  • 举报
回复
测试了一下,只有在xe7 下会出错,包括xe7里面的源码也会出现问题,不知道怎样解决
YueLingYueLiang 2014-10-19
  • 打赏
  • 举报
回复
手机环境会,电脑不会

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧