Skip to content

UIScreen

UI实例的内部方法库,由于剔除了类,因此UI类的功能被封装成模块以供开发者使用

ReloadButtonBack



  • 描述

    重载所有按钮注册绑定

  • 参数

    py
    uiName|str|指定控件的UI命名空间
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    ReloadButtonBack(uiName)

UIModComp



  • 描述

    获取UI对象实例

  • 参数

    py
    uiName|str|需要获取的ui实例名称
  • 返回值

    py
    uiNode|object|获取的ui实例对象
  • 示例

    py
    from QingYunModLibs.UIScreen import *
    uiNode = UIModComp(uiName)

AddButtonTouch



  • 描述

    添加UI中按钮的回调函数,需要传入按钮的路径,触发的状态,以及触发时调用的回调函数

  • 参数

    py
    ButtonPath|str|按钮的路径
    ButtonState|str|触发状态(Down:按下,Up:抬起,Cancel:触控外弹起,HoverIn:鼠标进入按钮,HoverOut:鼠标离开按钮,Move:按下按钮移动时,MoveIn:按下按钮进入控件,MoveOut:按下按钮移出控件)
    BackFunc|object|触发时调用的回调函数
    IsSwallow|str|是否吞噬点击操作与游戏的交互
    uiName|str|UI命名空间
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    def OnButton(args):
        pass
    
    AddButtonTouch("/panel/button", "Up", OnButton, True, "tutoralUI")

AddButton



  • 描述

    添加UI中按钮的回调函数,需要传入按钮的路径,触发的状态,以及触发时调用的回调函数

  • 参数

    py
    ButtonPath|str|按钮的路径
    ButtonState|str|触发状态(Down:按下,Up:抬起,Cancel:触控外弹起,HoverIn:鼠标进入按钮,HoverOut:鼠标离开按钮,Move:按下按钮移动时,MoveIn:按下按钮进入控件,MoveOut:按下按钮移出控件)
    IsSwallow|str|是否吞噬点击操作与游戏的交互
    uiName|str|UI命名空间
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    
    @AddButtonTouch("/panel/button", "Up", "tutoralUI", True)
    def OnButton(args):
        pass

AddSuperButtonTouch



  • 描述

    添加UI中按钮的回调函数,需要传入按钮的路径,触发的状态,以及触发时调用的回调函数(强制添加按钮回调,可能造成按钮重复注册回调,非必须情况请尽量不要使用)

  • 参数

    py
    ButtonPath|str|按钮的路径
    ButtonState|str|触发状态(Down:按下,Up:抬起,Cancel:触控外弹起,HoverIn:鼠标进入按钮,HoverOut:鼠标离开按钮,Move:按下按钮移动时,MoveIn:按下按钮进入控件,MoveOut:按下按钮移出控件)
    BackFunc|object|触发时调用的回调函数
    IsSwallow|str|是否吞噬点击操作与游戏的交互
    uiName|str|UI命名空间
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    def OnButton(args):
        pass
    
    AddSuperButtonTouch("/panel/button", "Up", OnButton, True, "tutoralUI")

AddSuperButton



  • 描述

    添加UI中按钮的回调函数,需要传入按钮的路径,触发的状态,以及触发时调用的回调函数(强制添加按钮回调,可能造成按钮重复注册回调,非必须情况请尽量不要使用)

  • 参数

    py
    ButtonPath|str|按钮的路径
    ButtonState|str|触发状态(Down:按下,Up:抬起,Cancel:触控外弹起,HoverIn:鼠标进入按钮,HoverOut:鼠标离开按钮,Move:按下按钮移动时,MoveIn:按下按钮进入控件,MoveOut:按下按钮移出控件)
    IsSwallow|str|是否吞噬点击操作与游戏的交互
    uiName|str|UI命名空间
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    
    @AddSuperButton("/panel/button", "Up", "tutoralUI", True)
    def OnButton(args):
        pass

SetScreenVisible



  • 描述

    设置UI是否显示在屏幕上,True为显示,False为不显示

  • 参数

    py
    uiName|str|需要进行操作的UI名称
    Visible|str|是否显示(True为显示,False为不显示)
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    SetScreenVisible(uiName, False)

SetVisible



  • 描述

    设置某控件是否显示在UI上,True为显示,False为不显示

  • 参数

    py
    uiName|str|需要进行操作的UI名称
    CompPath|str|控件路径
    Visible|str|是否显示(True为显示,False为不显示)
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    SetVisible(uiName, False)

GetVisible



  • 描述

    获取某控件是否显示在UI上,返回值为显示状态,True为显示,False为不显示

  • 参数

    py
    uiName|str|需要进行操作的UI名称
    CompPath|str|控件路径
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    VisibleGetVisible(uiName, "/panel/button")

GetIsHud



  • 描述

    获取该UI的输入模式(0:不穿透触控模式,1:穿透触控模式)

  • 参数

    py
    uiName|str|需要进行操作的UI名称
  • 返回值

    py
    InputModel|int|输入模式
  • 示例

    py
    from QingYunModLibs.UIScreen import *
    IsHud = GetIsHud(uiName)

SetIsHud



  • 描述

    设置该UI的输入模式(0:不穿透触控模式,1:穿透触控模式)

  • 参数

    py
    uiName|str|需要进行操作的UI名称
    InputModel|int|输入模式
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    SetIsHud(uiName, 0)

Clone



  • 描述

    克隆一个已有的控件,修改它的名称,并将它挂接到指定的父节点上,目前文本、图片、按钮控件的克隆控件表现正常,其他复杂控件的克隆控件可能存在运行问题,建议在json编写的过程中,手动复制一份对应控件使用

  • 参数

    py
    uiName|str|需要进行操作的UI名称
    CompPath|str|需要复制的控件路径
    ParentPath|str|新控件的父控件路径
    NewName|str|新控件的控件名
  • 返回值

    py
    Result, CompPath|bool, str|是否成功克隆控件, 新控件的路径
  • 示例

    py
    from QingYunModLibs.UIScreen import *
    Result, NewComp = Clone(uiName, "/panel/comp", "/panel", "comp_1")

SetCompPosition



  • 描述

    设置某一控件的偏移锚点坐标,可以设置为比例形式或者绝对值形式的坐标

  • 参数

    py
    uiName|str|需要进行操作的UI名称
    CompPath|str|需要设置坐标的控件路径
    Position|dict|设置的坐标偏移量(屏幕左上角为(00)且往右下延申坐标系)
    FollowType|str|比例跟随的控件
    PosModel|bool|设置为比例或者绝对值坐标
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    SetCompPosition(uiName, "/panel/comp", (0, 100), "/panel/comp1", False)

GetCompPosition



  • 描述

    获取某一控件的偏移锚点坐标,可以获取比例形式或者绝对值形式的坐标

  • 参数

    py
    uiName|str|需要进行操作的UI名称
    CompPath|str|需要获取坐标的控件路径
  • 返回值

    py
    Pos|tuple|获取的控件偏移锚点坐标
  • 示例

    py
    from QingYunModLibs.UIScreen import *
    Pos = GetCompPosition(uiName, "/panel/comp")

GetCompMustPosition



  • 描述

    获取某一控件的绝对全局屏幕坐标

  • 参数

    py
    uiName|str|需要进行操作的UI名称
    CompPath|str|需要获取坐标的控件路径
  • 返回值

    py
    X, Y|float, float|获取的绝对全局屏幕坐标
  • 示例

    py
    from QingYunModLibs.UIScreen import *
    Pos = GetCompPosition(uiName, "/panel/comp")

SetCompMustPosition



  • 描述

    设置某一控件的绝对全局屏幕坐标

  • 参数

    py
    uiName|str|需要进行操作的UI名称
    CompPath|str|需要设置坐标的控件路径
    Pos|tuple|控件绝对坐标
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    SetCompMustPosition(uiName, "/panel/comp", (100, 100))

SetCompAlpha



  • 描述

    设置某一控件的透明度

  • 参数

    py
    uiName|str|需要进行操作的UI名称
    CompPath|str|需要设置透明度控件的路径
    Alpha|float|透明度,取值0-1之间0表示完全透明1表示完全不透明
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    SetCompAlpha(uiName, "/panel/comp", 1)

GetCompAlpha



  • 描述

    获取某一控件的透明度

  • 参数

    py
    uiName|str|需要进行操作的UI名称
    CompPath|str|需要获取透明度控件的路径
  • 返回值

    py
    Alpha|float|透明度,取值0-1之间0表示完全透明1表示完全不透明
  • 示例

    py
    from QingYunModLibs.UIScreen import *
    Alpha = GetCompAlpha(uiName, "/panel/comp", 1)

GetCompSize



  • 描述

    获取某一控件的大小

  • 参数

    py
    uiName|str|需要进行操作的UI名称
    CompPath|str|需要获取大小信息的控件路径
  • 返回值

    py
    Size|tuple|控件的大小信息
  • 示例

    py
    from QingYunModLibs.UIScreen import *
    Size = GetCompSize(uiName, "/panel/comp")

SetCompSize



  • 描述

    设置某一控件的大小

  • 参数

    py
    uiName|str|需要进行操作的UI名称
    CompPath|str|需要设置大小信息的控件路径
    Size|tuple|控件的大小信息
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    SetCompSize(uiName, "/panel/comp", Size)

GetCompData



  • 描述

    获取某一控件的组件类

  • 参数

    py
    uiName|str|需要进行操作的UI名称
    CompPath|str|控件路径
  • 返回值

    py
    CompData|object|控件的组件类实例
  • 示例

    py
    from QingYunModLibs.UIScreen import *
    CompData = GetCompData(uiName, "/panel/comp")

RemoveComponent



  • 描述

    动态删除某一控件

  • 参数

    py
    uiName|str|需要进行操作的UI名称
    CompPath|str|需要删除的控件路径
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    RemoveComponent(uiName, "/panel/comp")

CreateGird



  • 描述

    创建一个动态表格(网格)控件

  • 参数

    py
    uiName|str|需要进行操作的UI名称
    GirdScreenPath|str|表格基类面板的控件路径
    BlockPath|str|表格内容的模板控件路径
    param|str|表格生成格式参数
    {'blockNum_x': 表格的横坐标大小, 
    'blockNum_y': 表格的纵坐标大小, 
    'testBySelf': 表格排列是否自适应, 
    'posModel': 坐标参数的数值类型(True为相对于父控件的比例值,False为绝对值,默认False), 
    'interval_x': 横坐标控件之间的间隔, 
    'interval_y': 纵坐标控件之间的间隔, 
    'point_x': 表格内容的横坐标起点, 
    'point_y': 表格内容的纵坐标起点 }
  • 返回值

    py
    GirdDict, GirdComp|dict, object|返回生成的内容控件路径字典以及网格对象
  • 示例

    py
    from QingYunModLibs.UIScreen import *
    Param = 
    {
        'blockNum_x': 3, 
        'blockNum_y': 3, 
        'testBySelf': False, 
        'posModel': False(True为相对于父控件的比例值,False为绝对值,默认False), 
        'interval_x': 10, 
        'interval_y': 10, 
        'point_x': 0, 
        'point_y': 0 
    }
    CreateGird(uiName, "/GirdScreen", "/GirdScreen/Comp", Param, )

CreateScroll_View



  • 描述

    创建一个滑动框控件(可与动态网格控件混用)

  • 参数

    py
    uiName|str|UI命名空间
    Scroll_ViewScreenPath|str|滑动框画布控件路径(可见大小取决于画布大小)
    BlockPath|str|滑动块内容控件路径(可滑动展示的部分)
    MoveModel|str|滑动模式(竖直方向:"vertical", 水平方向:"horizontally")
    TestBySelf|str|自适应布局
    Size|tuple|滑动框显示内容大小(如已经启动了TestBySelf自适应布局,则无需再传入该值)
    TouchSize|str|滑动框触控范围大小,用于确定可调整滑动框的点击范围大小(TestBySelf自适应布局启动后会如不设置会自动于Size大小同步)
    Rotate|str|滚动列表倾斜的角度大小
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    CreateScroll_View(uiName, "/Scroll_ViewScreen", "/Scroll_ViewScreen/BlockPath", "vertical", False, (100, 50), (100, 50), 0)

AddGameTickFunc



  • 描述

    添加UITick函数绑定

  • 参数

    py
    Func|object|需要绑定的函数
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    def OnTick():
        print "Tick"
    AddGameTickFunc(OnTick)

AddGameTick



  • 描述

    添加UITick函数绑定(装饰器函数)

  • 参数

    None

  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    
    @AddGameTick
    def OnTick():
        print "Tick"

AddToggleBack



  • 描述

    添加开关交互回调绑定

  • 参数

    py
    uiName|str|指定开关控件UI命名空间
    ToggleControl|str|指定开关控件路径(控件需填写到核心开关控件处,一般为"/this_toggle")
    BackFunc|object|开关交互触发绑定的回调函数
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    
    def OnToggle():
        print "OnToggle"
    
    AddToggleBack(uiName, "/panel/Toggle/this_toggle", OnToggle)

AddToggle



  • 描述

    添加开关交互回调绑定(装饰器函数)

  • 参数

    py
    uiName|str|指定开关控件UI命名空间
    ToggleControl|str|指定开关控件路径(控件需填写到核心开关控件处,一般为"/this_toggle")
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    
    @AddToggleBack(uiName, "/panel/Toggle/this_toggle")
    def OnToggle():
        print "OnToggle"

AddLongPressBack



  • 描述

    添加长按绑定按钮,可将某个按钮绑定长按交互功能

  • 参数

    py
    uiName|str|指定开关控件UI命名空间
    ButtonPath|str|指定控件的相对UI根节点路径
    PressTime|float|长按响应时间
    BackFunc|object|各交互状态触发的回调函数
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    
    def OnLongPress():
        print "OnLongPress"
    
    AddLongPressBack(uiName, "/panel/button", 0.5, OnLongPress)

AddSuperLongPressBack



  • 描述

    添加长按绑定按钮,可将某个按钮绑定长按交互功能(强制超添加,建议在动态添加按钮时使用)

  • 参数

    py
    uiName|str|指定开关控件UI命名空间
    ButtonPath|str|指定控件的相对UI根节点路径
    PressTime|float|长按响应时间
    BackFunc|object|各交互状态触发的回调函数
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    
    def OnLongPress():
        print "OnLongPress"
    
    AddSuperLongPressBack(uiName, "/panel/button", 0.5, OnLongPress)

AddButtonTouchMoving



  • 描述

    添加指定控件以供拖动操作

  • 参数

    py
    uiName|str|指定开关控件UI命名空间
    ControlPath|str|指定控件的节点路径
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    
    AddButtonTouchMoving(uiName, "/panel/button")

TouchMovingModel



  • 描述

    设置拖动按钮模式开启状态

  • 参数

    py
    State|bool|开启状态(True为可拖动,False为不可拖动)
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    
    TouchMovingModel(True)

RemoveGameTickFunc



  • 描述

    注销UITick函数绑定

  • 参数

    py
    Func|object|需要注销的函数
  • 返回值

    None

  • 示例

    py
    from QingYunModLibs.UIScreen import *
    
    def OnTick():
        print "Tick"
    
    RemoveGameTickFunc(OnTick)