zoukankan      html  css  js  c++  java
  • FMX App的Application的事件(各种手机的全局按键)

    直接上代码,还有条经验就是SetApplicationEventHandler可注册多个事件方法。

    unit Unit6;

    interface

    uses
      System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
      FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,
      FMX.Controls.Presentation, FMX.ScrollBox, FMX.Memo, FMX.Platform;

    type
      TForm6 = class(TForm)
        Memo1: TMemo;
        procedure FormCreate(Sender: TObject);
      private
        function HandleAppEvent(AAppEvent: TApplicationEvent;
          AContext: TObject): Boolean;
        { Private declarations }
      public
        { Public declarations }
      end;

    var
      Form6: TForm6;

    implementation

    {$R *.fmx}


    procedure TForm6.FormCreate(Sender: TObject);
    var
      SvcEvents: IFMXApplicationEventService;
    begin
      if TPlatformServices.Current.SupportsPlatformService
        (IFMXApplicationEventService, IInterface(SvcEvents))
      then
        SvcEvents.SetApplicationEventHandler(HandleAppEvent);

    end;

    function TForm6.HandleAppEvent(AAppEvent: TApplicationEvent; AContext: TObject): Boolean;
    var
      astate: string;
    begin
      case AAppEvent of
        TApplicationEvent.FinishedLaunching:
          astate := 'FinishedLaunching';
        TApplicationEvent.BecameActive:
          astate := 'BecameActive';
        TApplicationEvent.WillBecomeInactive:
          astate := 'WillBecomeInactive';
        TApplicationEvent.EnteredBackground:
          astate := 'EnteredBackground';
        TApplicationEvent.WillBecomeForeground:
          astate := 'WillBecomeForeground';
        TApplicationEvent.WillTerminate:
          astate := 'WillTerminate';
        TApplicationEvent.LowMemory:
          astate := 'LowMemory';
        TApplicationEvent.TimeChange:
          astate := 'TimeChange';
        TApplicationEvent.OpenURL:
          astate := 'OpenURL';
      end;
      Self.Memo1.Lines.Add(astate);
      Result := true;
    end;

    end.

    http://blog.sina.com.cn/s/blog_44fa172f0102vwr2.html

  • 相关阅读:
    【LeetCode】204
    【LeetCode】231
    【LeetCode】58
    解决error104 socket error问题
    爬虫问题
    80端口被system占用的问题
    Linux命令行下批量重命名文件名为数字索引编号(0~N.xxx)的方法
    [转]利用excel进行线性规划求解
    python——时间与时间戳之间的转换
    最全中文停用词表整理(1893个)
  • 原文地址:https://www.cnblogs.com/findumars/p/6480119.html
Copyright © 2011-2022 走看看