这一部分函数为自定义界面中若干个页面的控件设定一些默认值,包括控件颜色、字体大小和对齐方式,如果控件和页面中没有设定参数的值将采用默认值。下面函数的作用范围从函数调用处开始到再一次调用或文件结尾为止。可用来为n个相邻的页面定义同一默认值。
合理的默认值可以简化代码的书写
default_attr(白色, f24x16, 左对齐) #设置n个相邻的页面所有控件默认颜色为白色,字体大小为f24x16,对齐方式为左对齐
default_text_attr(红色, f24x12, 居中) #表示n个相邻的页面所有静态文本默认颜色为红色,字体大小为f24x12,对齐方式为居中
default_data_attr(黄色, f20x10) #表示n个相邻的页面所有数据的默认颜色为黄色,字体为f20x10
应将此函数写在所有页面定义之前
–10.4寸屏分辨率为800x600
–15寸屏分辨率为1024x768 (v3.4新增)
set_size(width, height, title=False)
True
或False
(默认为False
)
False
时自定义界面显示标题栏;True
时不显示标题栏,界面最大化。set_size(800, 600, title=False) #显示屏尺寸为800×600,显示标题栏
set_size(title=True) #显示屏尺寸为默认值800×600,不显示标题栏
set_size(1024, 768, title=True) # 15寸屏使用,不显示标题栏
不同尺寸屏幕标题栏和菜单栏高度以及有、无标题栏对应自定义页面布局尺寸推荐如下:
分 辨 率 | 题 栏 高 度 | 中 间 高 度 | 菜单栏和状态栏高度 | 有标题栏布局尺寸 | 无标题栏布局尺寸 |
---|---|---|---|---|---|
640×480 | 44 | 372 | 64 | 632×372 | 632×416 |
800×480 | 46 | 376 | 68 | 792×376 | 792×412 |
800×600 | 56 | 454 | 90 | 792×454 | 792×510 |
1024×768 | 64 | 606 | 98 | 1024×606 | 1024×670 |
以800x600分辨率为例:下图左侧为显示标题栏的界面,右侧为不显示标题栏的界面。
有标题栏 | 无标题栏 |
---|---|
![]() |
![]() |
KUI和CNC软件在同步开发和更新,所以每一个版本的KUI都要配合相应版本的系统软件才能实现所有的功能。
KUI开发人员总是使用最新的KUI开发包,为了避免生成旧版CNC无法加载的自定义界面,应使用sys_version
函数指定目标CNC系统版本。
开发自定义界面前,先找到使用自定义界面的数控系统的版本(系列号_BUILD号)作为sys_version
函数的参数,此函数能自动识别此版本的系统软件不支持的功能,在运行Python文件时报错。如果开发者需要使用报错的功能,则必须将系统软件升级到支持的版本或者最新版本。
sys_version("V5.1.00c_18728") #可以识别V5.1.00c_18728版本的系统软件不支持的功能进行报错
应将此函数写在所有页面定义之前,有关KUI和CNC的兼容性问题,参见 兼容性
每一个自定义界面都由一个根菜单进入,需要定义一个根菜单。根菜单是menu
的一个特例。其菜单动作仅支持页面跳转
和页面选择
两种,不支持enable
参数,且支持只写菜单名称一个参数,此时根菜单会自动捕捉第一个页面的id,按下根菜单 页面跳转到该页面。详细语法见 menu
with page():
作用域之外的menu是根菜单建议将根菜单定义在所有页面定义之前
使用函数kui_id(id)
指定此自定义界面在数控系统中的显示位置,id可取值(中英文都支持):
kui_id(位置) #此自定义界面显示在数控系统的位置页面下
默认情况下,自定义界面都是在开机时加载,可以通过调用函数 set_load_until_enter()
设置界面在第一次按下"根菜单"时才加载。
set_load_until_enter() #此函数可以在任何可执行处调用,为了清晰和便于维护建议在所有页面定义之前调用
在所有页面定义之前调用函数 use_cache(__file__)
会在_output文件夹下生成kui.db
缓存文件,将图片文件和脚本存入缓存文件中,当执行较慢时可以手动删除kui.db
文件,使其重新生成。调用此函数可以加快上位机的生成速度。
use_cache(__file__) # 此函数需要在所有页面定义之前调用
password=True
,该控件修改时弹出对话框需要输入密码,密码表达式的结果
转换为整数进行比较set_password("D5+2242354") #设置密码表达式为D5+2242354
textbox("F19030.0", (4, 4), password=True) # 设置控件需要输入密码