_Application

应用程序类,用来设置程序相关的消息回调。 全部展开

单例展开

  • + _app : _Application

    程序开始时自动创建。脚本中应该使用此对象。

属性展开

  • + console : _Console

    应用程序自带的控制台。默认不显示。

    • 示例

       _app.console.show = true
  • + cursor : string

    应用程序的光标。预加载的系统光标有arrow/cross/wait/help/no/size/sizenwse/sizenesw/sizewe/sizens/sizeall。用户也可以通过_loadCursor来加载自定义的光标。

    • 示例

       _app:loadCursor( "arrow.cur", "arrow" )
      _app.cursor = 'arrow'
  • + screenReportName : string

    屏幕报表名称。

    • 示例

       _app.screenReportName = 'ScreenReport'
  • + speed : number

    控制应用程序的运行速度。用于加速或减速程序的运行,表示应用程序是正常速度的倍率。默认是1.0。

    • 示例

       _app.speed = 2.0
  • + title : string

    应用程序的标题。

    • 示例

       _app.title = 'title'

只读属性展开

  • + elapse: number

    帧间隔。

    • 示例

       print(_app.elapse)

构造方法展开

  • + function _Application() : _Application

    脚本中不应当使用这个构造函数,他有一个单例_app,这个单例在程序启动时自动创建。

公共方法展开

  • + function loadCursor(curFile : string, type : string)

    预加载光标文件。

    • 参数
    • curFile : 加载的光标文件名,可以是ani或cur文件。
    • type : 光标的类型名。预加载之后的光标图标,就可以通过_Application的cursor属性来设置为当前光标。

    • 示例

       _app:loadCursor('arrow.cur','arrow')
      _app.cursor = 'arrow'
  • + function onActive(active : function)

    设置窗口激活或挂起时的回调函数。

    • 参数
    • active : 回调函数。该回调函数类型为 function(isActive : boolean),参数isActive表示程序是否被激活。

    • 示例

       _app:onActive(function(isActive)
      print(isActive)
      end)
  • + function onChar(char : function)

    设置键盘输入字符时的回调函数。

    • 参数
    • char : 回调函数。该回调函数类型为 function(char : uint),参数char表示被按下的字符。

    • 示例

       _app:onChar(function(InChar)
      print(InChar)
      end)
  • + function onClientMsg(clientMsg: function)

    设置微端发消息给lua的回调函数, 目前只在微端刷新时使用

    • 参数
    • clientMsg: 回调函数。该回调函数类型 function(msg : uint, param : uint)
    • 示例

        _app:onNotify(function(id) 
      print(msg, param)
      end)
  • + function onCloseWindow(closewin : function)

    设置窗口被关闭时的回调函数。

    • 参数
    • closewin : 回调函数。该回调函数类型为 function(),是一个没有参数的函数,返回一个bool值,是否关闭成功。

    • 示例

       _app:onCloseWindow(function() 
      print("Window Closed")
      end)
  • + function onDrag(drag : function)

    设置拖动文件到程序时的回调函数。

    • 参数
    • drag : 回调函数。该回调函数类型为 function(filenames : array),参数filenames为被拖动的文件名数组。

    • 示例

       _app:onDrag(function(filenames)
      for i, adress in ipairs(filenames) do
      print('Drag', adress)
      end
      end)
  • + function onElapse(elapse : function)

    设置当前帧数的回调。

    • 参数
    • elapse : 回调函数。该回调函数返回当前帧数
    • 示例

        _app:onElapse(function(e) 
      print(e)
      end)
  • + function onExit(exit : function)

    设置程序退出的回调函数。

    • 参数
    • exit : 回调函数。该回调函数无参数。
    • 示例

       _app:onExit(function() 
      print('Exit')
      end)
  • + function onGamepadButton(keyDown : function)

    设置ios手柄接口的回调函数。可用键值分别为 :

    _System.KeyGPA 为A键,

    _System.KeyGPB 为B键,

    _System.KeyGPX 为X键,

    _System.KeyGPY 为Y键,

    _System.KeyGPShoulderL 为L1键,

    _System.KeyGPShoulderR 为R1键,

    _System.KeyGPTriggerL 为L2键,

    _System.KeyGPTriggerR 为R2键,

    _System.KeyGPPaused为中间的menu键.

    • 参数
    • keyDown : 回调函数。该回调函数类型为 function( key : number, force : number, pressed : bool )。回调函数的参数key表示被按下的键, force表示按下的力度, pressed表示按键是否按下

    • 示例

       _app:onGamepadButton(function(key, force, pressed)
      print(key, force, pressed)
      end)
  • + function onGamepadConnect(connect : function)

    设置iOS手柄的回调函数。

    • 参数
    • connect : 回调函数。该回调函数类型为function(isconnect : bool),参数isconnect表示手柄是否连接成功。

    • 示例

       _app:onGamepadConnect( function(isconnect)
      print(isconnect)
      end )
  • + function onGamepadDirection(keyDown : function)

    设置ios手柄摇杆接口的回调函数。可用的键值分别为 :

    _System.KeyGPThumbL 为左摇杆

    _System.KeyGPThumbR 为右摇杆

    _System.KeyGPDpad 为方向键

    • 参数
    • keyDown : 回调函数。该回调函数类型为 function( key: number, x : number, y : number )。回调函数的参数key表示被按下的键。回调函数的参数x,y表示按下时的位移分量。

    • 示例

       _app:onGamepadDirection(function(key, x, y)
      print(key, x, y)
      end)
  • + function onIdle(idle : function)

    设置程序每帧的回调函数。

    • 参数
    • idle : 回调函数。该回调函数类型为 function(elapse : uint),参数elapse表示距离上一帧的间隔。

    • 示例

       _app:onIdle(function(elapse) 
      print("onIdle")
      end)
  • + function onIMEString(input : function)

    设置输入字符串时的回调函数。

    • 参数
    • input : 回调函数。该回调函数类型为 function(str : string),参数str表示输入的字符串。

    • 示例

       _app:onIMEString(function(str) 
      print(str)
      end)
  • + function onKeyboardString(keyboardString: function)

    设置移动版输入框的回调函数。

    • 参数
    • keyboardString : 回调函数。该回调函数类型 function(str : string), 参数str表示输入字符串
    • 示例

        _app:onKeyboardString(function(str) 
      print(str)
      end)
  • + function onKeyDown(keyDown : function)

    设置键盘按键按下时的回调函数。

    • 参数
    • keyDown : 回调函数。该回调函数类型为 function(keycode : uint),参数keycode表示被按下的键值。

    • 示例

       _app:onKeyDown(function(keycode) 
      print('KeyDown', keycode)
      end)
  • + function onKeyUp(keyUp : function)

    设置键盘按键抬起时的回调函数。

    • 参数
    • keyUp : 回调函数。该回调函数类型为 function(keycode : uint),参数keycode表示被按下的键值。
    • 示例

        _app:onKeyUp(function(keycode) 
      print('KeyUp', keycode)
      end)
  • + function onMouseDbclick(dClick : function)

    设置鼠标双击时的回调函数。

    • 参数
    • dClick : 回调函数。该回调函数类型为 function(x : int, y :int)。参数x,y表示双击时的鼠标坐标。

    • 示例 _app:onMouseDbclick(function(x, y) print('MouseDbclick', x, y) end)

  • + function onMouseDown(mouseDown : function)

    设置鼠标按下时的回调函数。

    • 参数
    • mouseDown : 回调函数。该回调函数类型为 function(button : int, x : int, y : int)。回调函数的参数button表示被按下的鼠标键,0为左键,1为右键,2为中键。回调函数的参数x,y表示按下时的鼠标坐标。
    • 示例

        _app:onMouseDown(function(button,x, y) print('MouseDown',button, x, y) end)
  • + function onMouseMove(mouseMove : function)

    设置鼠标移动的回调函数。

    • 参数
    • mouseMove : 回调函数。该回调函数类型为 function(x : int, y : int),参数x,y表示当前鼠标的位置。

    • 示例

       _app:onMouseMove(function(x, y) 
      print('MouseMove', x, y)
      end)
  • + function onMouseUp(mouseUp : function)

    设置鼠标抬起时的回调函数。

    • 参数
    • mouseUp : 回调函数。该回调函数类型为 function(button : int, x : int, y : int)。回调函数的参数button表示被按下的鼠标键,0为左键,1为右键,2为中键。。回调函数的参数x,y表示按下时的鼠标坐标。

    • 示例

       _app:onMouseUp(function(button,x,y) 
      print('MouseUp',button,x,y)
      end)
  • + function onMouseWheel(mouseWheel : function)

    设置鼠标滚轮滚动时的回调函数。

    • 参数
    • mouseWheel : 回调函数。该回调函数类型为 function(delta : float),参数delta表示鼠标滚轮滚动的值。

    • 示例

       _app:onMouseWheel(function(delta) 
      print('MouseWheel', delta)
      end)
  • + function onNetChange( netchange : function )

    网络状态改变时的回调函数,目前只在移动版上有效。

    • 示例

       _app:onNetChange(function() 
      print(_System.networkState)
      end)
  • + function onNotify(notify: function)

    设置移动版应用被消息通知拉起的回调函数。

    • 参数
    • notify : 回调函数。该回调函数类型 function(id : uint), 参数id表示消息id
    • 示例

        _app:onNotify(function(id) 
      print(id)
      end)
  • + function onResize(resize : function)

    设置窗口大小改变时的回调函数。

    • 参数
    • resize : 回调函数。该回调函数类型为 function(w : int, h : int),参数w,h表示窗口的宽和高。

    • 示例

       _app:onResize(function(w, h) 
      print('Resize', w, h)
      end)
  • + function onRotation(rotation : function)

    设置移动设备屏幕翻转时的回调函数。该函数只有接口,还没有真正实现。

    • 参数
    • rotation : 回调函数。该回调函数类型为 function(w, h),参数w, h表示屏幕翻转之后的分辨率。
    • 示例

       _app:onRotation(function(w, h) 
      print(w, h)
      end)
  • + function onShake(shake : function)

    设置移动版shake的回调。

    • 参数
    • shake : 回调函数。该回调函数类型为 function()。

    • 示例

       _app:onShake(function() 
      print('shake')
      end)
  • + function onTouchBegin(touchBegin : function)

    设置触摸屏上触摸开始的回调函数。

    • 参数
    • touchBegin : 回调函数。该回调函数类型为 function(x : int, y : int, count : int, fingerid : int, force : number),参数x,y表示当前触摸的位置;count表示当前屏幕上触摸点的个数;fingerid表示触发当前回调的手指id;force表示当前触摸的力度(0,0-6.67)。

    • 示例

       _app:onTouchBegin(function(x, y, count, fingerid, force)
      print('TouchBegin', x, y, count, fingerid, force)
      end)
  • + function onTouchEnd(touchEnd : function)

    设置手指离开触摸屏的回调函数。

    • 参数
    • touchEnd : 回调函数。该回调函数类型为 function(x : int, y : int, count : int, fingerid : int, force : number),参数x,y表示当前触摸的位置;count表示当前屏幕上触摸点的个数;fingerid表示触发当前回调的手指id;force表示当前触摸的力度(0,0-6.67)。

    • 示例

       _app:onTouchEnd(function(x, y, count, fingerid, force)
      print('TouchEnd', x, y, count, fingerid, force)
      end)
  • + function onTouchMove(touchMove : function)

    设置手指在触摸屏上移动的回调函数。

    • 参数
    • touchMove : 回调函数。该回调函数类型为 function(x : int, y : int, count : int, fingerid : int, force : number),参数x,y表示当前触摸的位置;count表示当前屏幕上触摸点的个数;fingerid表示触发当前回调的手指id;force表示当前触摸的力度(0,0-6.67)。

    • 示例

       _app:onTouchMove(function(x, y, count, fingerid, force)
      print('TouchMove', x, y, count, fingerid, force)
      end)
  • + function onTouchZoom(touchZoom : function)

    设置两只手指在触摸屏上做靠近拉远动作的回调函数。

    • 参数
    • touchZoom : 回调函数。该回调函数类型为 function(x : int, count : int),参数x表示触摸两点当前的距离与刚开始做拉伸动作时两点距离的差再除以300,( currentDistanceoriginDistance ) / 300。(临时设置, 待改进);count表示当前屏幕上触摸点的个数;

    • 示例

       _app:onTouchZoom(function(x, count)
      print('TouchZoom', x, count)
      end)

代码示例

    _sys:addPath('res')

    _app:onActive(function(a) print('Active is', a) end)

    _app:onResize(function(w, h) print('Resize', w, h) end)

    _app:onExit(function() print('Exit') end)

    _app:onMouseMove(function(x, y) print('MouseMove', x, y) end)

    _app:onMouseDown(function(x, y) print('MouseDown', x, y) end)

    _app:onMouseUp(function(x, y) print('MouseUp', x, y) end)

    _app:onMouseDbclick(function(x, y) print('MouseDbclick', x, y) end)

    _app:onMouseWheel(function(f) print('MouseWheel', f) end)

    _app:onKeyDown(function(u) print('KeyDown', u) end)

    _app:onKeyUp(function(u) print('KeyUp', u) end)

    _app:onChar(function(u) print('Char', u) end)

    _app:onTouchMove(function(x, y) print('TouchMove', x, y) end)

    _app:onTouchBegin(function(x, y) print('TouchBegin', x, y) end)

    _app:onTouchEnd(function(x, y) print('TouchEnd', x, y) end)

    _app:onTouchZoom(function(x) print('TouchZoom', x) end)

    _app:onIdle(function(e) _rd:drawAxis(30) end)

    _app:loadCursor('arrow.cur', 'arrow')

    _app.cursor = 'arrow'

    _app:onDrag(function(f)
    for i, v in ipairs(f) do
    print('Drag', v)
    end
    end)
问题反馈(登录才可以发表哦!)