1. 编译报错:图片(字库、动画、音频等)编号引用错误

控件调用的图片ID(字库、动画、音频等),在资源中不存在就会报这个错误。

解决:
  1. 添加图片(字库、动画、音频等)

  2. 将控件引用图片(字库、动画、音频等)的ID设为65535(即无图片的意思),操作如下图

双击报错信息

图片改为65535

2. 编译报错:输文件内存占用过大,请删除部分资源后重试

添加的资源(图片、字库、动画、音频、视频)大于型号的可使用内存(14.9M),就会报错。

解决办法:删除资源。对于字库可以采用自定义字符集方式生成,动画减少帧率,音频、视频可以采用外部TF播放方式。


3. 如何取消控件添加状态

两种方法:
  1. 按键盘的Esc键

  2. 点击属性右键


4. 字库工具字符集和工程编码的区别

大致概念:
  • 字符集:一种编码的所有字符的集合.

  • 字符编码:计算机显示字符时,按多少个字节及编码规则来解析显示。

字库工具的字符集:可以理解为选定一个编码的所有字符。

工程编码:上位机根据工程编码筛选与字库工具选定字符重合的部分。

举例1:

字库工具字符集选了GBK,工程编码选GB2312,那么下载到硬件屏的字库只有GB2312的字符。

举例2:

大家都只知道,UTF8编码可以显示全球任何语言的字符。如果字库工具字符集选了GB2312, 工程编码选UTF8,那么控件只能显示简体中文(在GB2312字符集内),而不能显示繁体中文(在GBK字符集内)。


5. 字库工具的抗锯齿要不要选

抗锯齿占用空间比非抗锯齿多近4倍,是否需要抗锯齿,建议根据编译后剩余空间来决定,如果空间足够,可以选择抗锯齿。

建议多采用自定义(字库工具字符集选项)方式创建字库,需要显示什么字符就输入什么字符,这样很大程度减少字库占用空间。


6. 输出窗口的内存14.9M是什么意思

拷贝完成窗口

内存14.9M:硬件屏核心板SPI FLASH为16MB,其中1.1MB被系统代码占用了,可以存放工程配置文件大小为14.9MB。

数据总大小:即拷贝到核心板SPI FLASH的总大小。当数据总大小大于14.9MB时,会提示错误:


7. U盘如何格式化为FAT32文件系统

第一步,U盘或读卡器(插上TF卡)连接到电脑的USB后,在此电脑->设备和驱动器可以看到U盘(不同电脑显示不一样),如下图:

发现U盘

第二步,选中右键,弹出窗口,选择格式。如下图:

右键格式化

警告

格式化之前,一定将U盘里数据拷贝到电脑备份好!

第三步,格式化配置为如下图:

格式化配置

第四步,点击开始,等待格式化完毕。


8. 音频控件和play()指令的区别

  • 音频控件是控件,页面加载时运行,页面离开释放,只能在当前页面播放。

  • play()指令在当前页面播放后,页面离开并不会停止(适合全局背景音乐)

  • 音频控件可以获取音频的总时长和当前播放时间,play()指令无。

  • 音频控件可以编写播放结束事件脚本。


9. 脚本或键盘修改了文本值,没显示?

  • 确保使用的字库包含有你要显示的字符

  • 确保控件的size属性是否足够大,否则,可能显示不全


10. 字库全缓存什么情况需要勾选?

  • 全缓存原理:设为全缓存,字库数据加载到RAM(运行内存)里,极大加快字符显示速度。

  • 推荐设置的控件:滚动文本控件、滑动选择控件。(这两个控件需要显示字符速度快,否则容易出现卡顿现象)

  • 全缓存的字库:字库工具生成时建议使用自定义字符集,以减小空间从而减小RAM消耗。消耗RAM太大可能导致屏幕运行不正常。

字库工具使用自定义字符集操作如下图所示:

字库工具自定义字符示意图

字库设为全缓存操作如下图所示:

字库设为全缓存


11. 控件什么时候设为全局

当你想页面离开后,控件还保持修改后的状态,则设为全局。

如:滑块滑动后,页面离开了再次加载时,滑块位置又恢复原样了。 设为全局后,则可以保持。另外,设为全局后,在其他页面也可以对其赋值。

想要保持修改后的状态,还有一种办法,那就是使用伪全局

伪全局:

在页面初始化前事件中,对控件赋初始化值。如:滑块控件表示系统音量,初始化事件中编写 “sl0.val=sys.vol”, 这样每次加载页面滑块都是上次修改的位置。


12. 如何自定义键盘

第一步:创建系统键盘页面。你想自定义数值键盘就创建数值键盘页面、想要英文键盘就创建英文键盘页面,拼音键盘也一样。 如何创建请参考:键盘输入

第二步:复制刚创建的键盘页面。(工程配置修改旋转角度会重置系统键盘页面,所以这里复制新页面再修改)

复制键盘页面

第三步:加载自己P好的键盘图片(P图时,按钮大小、个数、布局都不需要按照系统原图的)。

自定义键盘添加图片

第四步:键盘页面图片id修改为刚加载的图片

自定义键盘修改页面属性

第五步:给P好的图匹配键盘按钮控件,调整大小,设置键值

匹配按键

第六步:文本控件的输入键盘属性绑定我们制作的自定义键盘页面即可。


13. 图层窗口的作用

图层窗口

  • 作用1:上移或下移调整控件图层。

图层下移

  • 作用2:当多个控件重叠时,在编辑界面选不到底层的控件,则可以在图层窗口这里选择。

图层选中

14. 如何显示多国语言

首先,工程配置的字符编码需设置为UTF8。

其次,在任意页面增加一个变量控件,设为全局,名字改为lang_select(该变量用于切换语言)。

然后在页面初始化前事件写语言赋值脚本,参考如下:

 1 if(lang_select.val==0)
 2 {
 3     t0.txt.str = "English";
 4 }
 5 else if(lang_select.val==1)
 6 {
 7     t0.txt.str = "简体中文";
 8 }
 9 else if(lang_select.val==2)
10 {
11     t0.txt.str = "こんにちは";
12 }
13 else if(lang_select.val==3)
14 {
15     t0.txt.str = "안녕하세요";
16 }
注意:
  • 制作字库时,字符集采用自定义方式,然后输入需要显示的字符。

  • 文本控件的size大小足够,否则显示不全。


15. 脚本字符串的转义字符

转义字符是字符串中使用两个字符表征一个特殊的字符。

目前脚本支持的转义字符:\r(回车) \n(换行) \”(分号) \\(斜杠)

举例1: prints(“123\r\n”);

结果:打印123后会回车换行 (注意:prints指令后面还会自带分号)

打印回车换行

举例2: t0.txt.str = “123\n456”;

结果:文本会换行(注意:不需要\r)

字符串换行

举例3: t0.txt.str = “\”123\”!=\”456\””;

结果:会把\”当一个引号

转义字符双引号举例

举例4: t0.txt.str = “123\\\456”;

结果:会把连续的\\两个斜杠当作一个斜杠

转义字符斜杠举例

16. 弹窗关闭后修改的内容没保存

子页面也是页面,弹窗后,相当于切换到了新页面,旧页面的内存会被释放掉。

问题举例:旧页面有个状态开关控件,是打开状态。弹窗关闭,回到旧页面时,状态开关恢复原样了。

解决办法:如果想保持打开状态,可以将该控件设为全局。