我创建的自定义控件json总是加载失败是为什么
已完成json文件如下,用的file2c.exe工具转换成对应.h文件
{
"version": {
"major": 1,
"minor": 0
},
"main_interface": {
"floating_window": {
"is_enable": true
},
"speaker": {
"is_enable_tts": false,
"is_enable_voice": false
},
"widget_list": [{
"widget_index": 0,
"widget_type": "button",
"widget_name": "Button",
"icon_file_set": {
"icon_file_name_selected": "up_select.png",
"icon_file_name_unselected": "up.png"
},
"customize_rc_buttons_config": {
"is_enable": true,
"mapping_config_display_order": 0
}
},
{
"widget_index": 1,
"widget_type": "button",
"widget_name": "water",
"icon_file_set": {
"icon_file_name_selected": "water_select.png",
"icon_file_name_unselected": "water.png"
},
"customize_rc_buttons_config": {
"is_enable": true,
"mapping_config_display_order": 1
}
},
{
"widget_index": 2,
"widget_type": "button",
"widget_name": "down",
"icon_file_set": {
"icon_file_name_selected": "down_select.png",
"icon_file_name_unselected": "down.png"
},
"customize_rc_buttons_config": {
"is_enable": true,
"mapping_config_display_order": 2
}
}
]
},
"config_interface": {
"text_input_box": {
"widget_name": "TextInputBox",
"placeholder_text": "Please input message",
"is_enable": true
},
"widget_list": []
}
}
}
报错如下图所示:
-
转换后的.h文件如下图所示,图片都是96*96,参考的示例代码
/* Generated by file2c, do not edit manually */
#ifndef __wx_widget_config_json_h_included
#define __wx_widget_config_json_h_included
#include <stdint.h>
/* Contents of file wx_widget_config.json */
#define wx_widget_config_json_fileName "wx_widget_config.json"
#define wx_widget_config_json_fileSize 1369
static const uint8_t wx_widget_config_json_fileBinaryArray[1369] = {
0x7B, 0x0A, 0x09, 0x22, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6F, 0x6E, 0x22, 0x3A, 0x20, 0x7B, 0x0A,
0x09, 0x09, 0x22, 0x6D, 0x61, 0x6A, 0x6F, 0x72, 0x22, 0x3A, 0x20, 0x31, 0x2C, 0x0A, 0x09, 0x09,
0x22, 0x6D, 0x69, 0x6E, 0x6F, 0x72, 0x22, 0x3A, 0x20, 0x30, 0x0A, 0x09, 0x7D, 0x2C, 0x0A, 0x09,
0x22, 0x6D, 0x61, 0x69, 0x6E, 0x5F, 0x69, 0x6E, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x22,
0x3A, 0x20, 0x7B, 0x0A, 0x09, 0x09, 0x22, 0x66, 0x6C, 0x6F, 0x61, 0x74, 0x69, 0x6E, 0x67, 0x5F,
0x77, 0x69, 0x6E, 0x64, 0x6F, 0x77, 0x22, 0x3A, 0x20, 0x7B, 0x0A, 0x09, 0x09, 0x09, 0x22, 0x69,
0x73, 0x5F, 0x65, 0x6E, 0x61, 0x62, 0x6C, 0x65, 0x22, 0x3A, 0x20, 0x74, 0x72, 0x75, 0x65, 0x0A,
0x09, 0x09, 0x7D, 0x2C, 0x0A, 0x20, 0x20, 0x20, 0x20, 0x22, 0x73, 0x70, 0x65, 0x61, 0x6B, 0x65,
0x72, 0x22, 0x3A, 0x20, 0x7B, 0x0A, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x69, 0x73, 0x5F,
0x65, 0x6E, 0x61, 0x62, 0x6C, 0x65, 0x5F, 0x74, 0x74, 0x73, 0x22, 0x3A, 0x20, 0x66, 0x61, 0x6C,
0x73, 0x65, 0x2C, 0x0A, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x69, 0x73, 0x5F, 0x65, 0x6E,
0x61, 0x62, 0x6C, 0x65, 0x5F, 0x76, 0x6F, 0x69, 0x63, 0x65, 0x22, 0x3A, 0x20, 0x66, 0x61, 0x6C,
0x73, 0x65, 0x0A, 0x20, 0x20, 0x20, 0x20, 0x7D, 0x2C, 0x0A, 0x09, 0x09, 0x22, 0x77, 0x69, 0x64,
0x67, 0x65, 0x74, 0x5F, 0x6C, 0x69, 0x73, 0x74, 0x22, 0x3A, 0x20, 0x5B, 0x7B, 0x0A, 0x09, 0x09,
0x09, 0x09, 0x22, 0x77, 0x69, 0x64, 0x67, 0x65, 0x74, 0x5F, 0x69, 0x6E, 0x64, 0x65, 0x78, 0x22,
0x3A, 0x20, 0x30, 0x2C, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x22, 0x77, 0x69, 0x64, 0x67, 0x65, 0x74,
0x5F, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3A, 0x20, 0x22, 0x62, 0x75, 0x74, 0x74, 0x6F, 0x6E, 0x22,
0x2C, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x22, 0x77, 0x69, 0x64, 0x67, 0x65, 0x74, 0x5F, 0x6E, 0x61,
0x6D, 0x65, 0x22, 0x3A, 0x20, 0x22, 0x42, 0x75, 0x74, 0x74, 0x6F, 0x6E, 0x22, 0x2C, 0x0A, 0x09,
0x09, 0x09, 0x09, 0x22, 0x69, 0x63, 0x6F, 0x6E, 0x5F, 0x66, 0x69, 0x6C, 0x65, 0x5F, 0x73, 0x65,
0x74, 0x22, 0x3A, 0x20, 0x7B, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x09, 0x22, 0x69, 0x63, 0x6F, 0x6E,
0x5F, 0x66, 0x69, 0x6C, 0x65, 0x5F, 0x6E, 0x61, 0x6D, 0x65, 0x5F, 0x73, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x65, 0x64, 0x22, 0x3A, 0x20, 0x22, 0x75, 0x70, 0x5F, 0x73, 0x65, 0x6C, 0x65, 0x63, 0x74,
0x2E, 0x70, 0x6E, 0x67, 0x22, 0x2C, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x09, 0x22, 0x69, 0x63, 0x6F,
0x6E, 0x5F, 0x66, 0x69, 0x6C, 0x65, 0x5F, 0x6E, 0x61, 0x6D, 0x65, 0x5F, 0x75, 0x6E, 0x73, 0x65,
0x6C, 0x65, 0x63, 0x74, 0x65, 0x64, 0x22, 0x3A, 0x20, 0x22, 0x75, 0x70, 0x2E, 0x70, 0x6E, 0x67,
0x22, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x7D, 0x2C, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x22, 0x63, 0x75,
0x73, 0x74, 0x6F, 0x6D, 0x69, 0x7A, 0x65, 0x5F, 0x72, 0x63, 0x5F, 0x62, 0x75, 0x74, 0x74, 0x6F,
0x6E, 0x73, 0x5F, 0x63, 0x6F, 0x6E, 0x66, 0x69, 0x67, 0x22, 0x3A, 0x20, 0x7B, 0x0A, 0x09, 0x09,
0x09, 0x09, 0x09, 0x22, 0x69, 0x73, 0x5F, 0x65, 0x6E, 0x61, 0x62, 0x6C, 0x65, 0x22, 0x3A, 0x20,
0x74, 0x72, 0x75, 0x65, 0x2C, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x09, 0x22, 0x6D, 0x61, 0x70, 0x70,
0x69, 0x6E, 0x67, 0x5F, 0x63, 0x6F, 0x6E, 0x66, 0x69, 0x67, 0x5F, 0x64, 0x69, 0x73, 0x70, 0x6C,
0x61, 0x79, 0x5F, 0x6F, 0x72, 0x64, 0x65, 0x72, 0x22, 0x3A, 0x20, 0x30, 0x0A, 0x09, 0x09, 0x09,
0x09, 0x7D, 0x0A, 0x09, 0x09, 0x09, 0x7D, 0x2C, 0x0A, 0x09, 0x09, 0x09, 0x7B, 0x0A, 0x09, 0x09,
0x09, 0x09, 0x22, 0x77, 0x69, 0x64, 0x67, 0x65, 0x74, 0x5F, 0x69, 0x6E, 0x64, 0x65, 0x78, 0x22,
0x3A, 0x20, 0x31, 0x2C, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x22, 0x77, 0x69, 0x64, 0x67, 0x65, 0x74,
0x5F, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3A, 0x20, 0x22, 0x62, 0x75, 0x74, 0x74, 0x6F, 0x6E, 0x22,
0x2C, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x22, 0x77, 0x69, 0x64, 0x67, 0x65, 0x74, 0x5F, 0x6E, 0x61,
0x6D, 0x65, 0x22, 0x3A, 0x20, 0x22, 0x77, 0x61, 0x74, 0x65, 0x72, 0x22, 0x2C, 0x0A, 0x09, 0x09,
0x09, 0x09, 0x22, 0x69, 0x63, 0x6F, 0x6E, 0x5F, 0x66, 0x69, 0x6C, 0x65, 0x5F, 0x73, 0x65, 0x74,
0x22, 0x3A, 0x20, 0x7B, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x09, 0x22, 0x69, 0x63, 0x6F, 0x6E, 0x5F,
0x66, 0x69, 0x6C, 0x65, 0x5F, 0x6E, 0x61, 0x6D, 0x65, 0x5F, 0x73, 0x65, 0x6C, 0x65, 0x63, 0x74,
0x65, 0x64, 0x22, 0x3A, 0x20, 0x22, 0x77, 0x61, 0x74, 0x65, 0x72, 0x5F, 0x73, 0x65, 0x6C, 0x65,
0x63, 0x74, 0x2E, 0x70, 0x6E, 0x67, 0x22, 0x2C, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x09, 0x22, 0x69,
0x63, 0x6F, 0x6E, 0x5F, 0x66, 0x69, 0x6C, 0x65, 0x5F, 0x6E, 0x61, 0x6D, 0x65, 0x5F, 0x75, 0x6E,
0x73, 0x65, 0x6C, 0x65, 0x63, 0x74, 0x65, 0x64, 0x22, 0x3A, 0x20, 0x22, 0x77, 0x61, 0x74, 0x65,
0x72, 0x2E, 0x70, 0x6E, 0x67, 0x22, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x7D, 0x2C, 0x0A, 0x09, 0x09,
0x09, 0x09, 0x22, 0x63, 0x75, 0x73, 0x74, 0x6F, 0x6D, 0x69, 0x7A, 0x65, 0x5F, 0x72, 0x63, 0x5F,
0x62, 0x75, 0x74, 0x74, 0x6F, 0x6E, 0x73, 0x5F, 0x63, 0x6F, 0x6E, 0x66, 0x69, 0x67, 0x22, 0x3A,
0x20, 0x7B, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x09, 0x22, 0x69, 0x73, 0x5F, 0x65, 0x6E, 0x61, 0x62,
0x6C, 0x65, 0x22, 0x3A, 0x20, 0x74, 0x72, 0x75, 0x65, 0x2C, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x09,
0x22, 0x6D, 0x61, 0x70, 0x70, 0x69, 0x6E, 0x67, 0x5F, 0x63, 0x6F, 0x6E, 0x66, 0x69, 0x67, 0x5F,
0x64, 0x69, 0x73, 0x70, 0x6C, 0x61, 0x79, 0x5F, 0x6F, 0x72, 0x64, 0x65, 0x72, 0x22, 0x3A, 0x20,
0x31, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x7D, 0x0A, 0x09, 0x09, 0x09, 0x7D, 0x2C, 0x0A, 0x09, 0x09,
0x09, 0x7B, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x22, 0x77, 0x69, 0x64, 0x67, 0x65, 0x74, 0x5F, 0x69,
0x6E, 0x64, 0x65, 0x78, 0x22, 0x3A, 0x20, 0x32, 0x2C, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x22, 0x77,
0x69, 0x64, 0x67, 0x65, 0x74, 0x5F, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3A, 0x20, 0x22, 0x62, 0x75,
0x74, 0x74, 0x6F, 0x6E, 0x22, 0x2C, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x22, 0x77, 0x69, 0x64, 0x67,
0x65, 0x74, 0x5F, 0x6E, 0x61, 0x6D, 0x65, 0x22, 0x3A, 0x20, 0x22, 0x64, 0x6F, 0x77, 0x6E, 0x22,
0x2C, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x22, 0x69, 0x63, 0x6F, 0x6E, 0x5F, 0x66, 0x69, 0x6C, 0x65,
0x5F, 0x73, 0x65, 0x74, 0x22, 0x3A, 0x20, 0x7B, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x09, 0x22, 0x69,
0x63, 0x6F, 0x6E, 0x5F, 0x66, 0x69, 0x6C, 0x65, 0x5F, 0x6E, 0x61, 0x6D, 0x65, 0x5F, 0x73, 0x65,
0x6C, 0x65, 0x63, 0x74, 0x65, 0x64, 0x22, 0x3A, 0x20, 0x22, 0x64, 0x6F, 0x77, 0x6E, 0x5F, 0x73,
0x65, 0x6C, 0x65, 0x63, 0x74, 0x2E, 0x70, 0x6E, 0x67, 0x22, 0x2C, 0x0A, 0x09, 0x09, 0x09, 0x09,
0x09, 0x22, 0x69, 0x63, 0x6F, 0x6E, 0x5F, 0x66, 0x69, 0x6C, 0x65, 0x5F, 0x6E, 0x61, 0x6D, 0x65,
0x5F, 0x75, 0x6E, 0x73, 0x65, 0x6C, 0x65, 0x63, 0x74, 0x65, 0x64, 0x22, 0x3A, 0x20, 0x22, 0x64,
0x6F, 0x77, 0x6E, 0x2E, 0x70, 0x6E, 0x67, 0x22, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x7D, 0x2C, 0x0A,
0x09, 0x09, 0x09, 0x09, 0x22, 0x63, 0x75, 0x73, 0x74, 0x6F, 0x6D, 0x69, 0x7A, 0x65, 0x5F, 0x72,
0x63, 0x5F, 0x62, 0x75, 0x74, 0x74, 0x6F, 0x6E, 0x73, 0x5F, 0x63, 0x6F, 0x6E, 0x66, 0x69, 0x67,
0x22, 0x3A, 0x20, 0x7B, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x09, 0x22, 0x69, 0x73, 0x5F, 0x65, 0x6E,
0x61, 0x62, 0x6C, 0x65, 0x22, 0x3A, 0x20, 0x74, 0x72, 0x75, 0x65, 0x2C, 0x0A, 0x09, 0x09, 0x09,
0x09, 0x09, 0x22, 0x6D, 0x61, 0x70, 0x70, 0x69, 0x6E, 0x67, 0x5F, 0x63, 0x6F, 0x6E, 0x66, 0x69,
0x67, 0x5F, 0x64, 0x69, 0x73, 0x70, 0x6C, 0x61, 0x79, 0x5F, 0x6F, 0x72, 0x64, 0x65, 0x72, 0x22,
0x3A, 0x20, 0x32, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x7D, 0x0A, 0x09, 0x09, 0x09, 0x7D, 0x0A, 0x09,
0x09, 0x5D, 0x0A, 0x09, 0x7D, 0x2C, 0x0A, 0x09, 0x22, 0x63, 0x6F, 0x6E, 0x66, 0x69, 0x67, 0x5F,
0x69, 0x6E, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x22, 0x3A, 0x20, 0x7B, 0x0A, 0x09, 0x09,
0x22, 0x74, 0x65, 0x78, 0x74, 0x5F, 0x69, 0x6E, 0x70, 0x75, 0x74, 0x5F, 0x62, 0x6F, 0x78, 0x22,
0x3A, 0x20, 0x7B, 0x0A, 0x09, 0x09, 0x09, 0x22, 0x77, 0x69, 0x64, 0x67, 0x65, 0x74, 0x5F, 0x6E,
0x61, 0x6D, 0x65, 0x22, 0x3A, 0x20, 0x22, 0x54, 0x65, 0x78, 0x74, 0x49, 0x6E, 0x70, 0x75, 0x74,
0x42, 0x6F, 0x78, 0x22, 0x2C, 0x0A, 0x09, 0x09, 0x09, 0x22, 0x70, 0x6C, 0x61, 0x63, 0x65, 0x68,
0x6F, 0x6C, 0x64, 0x65, 0x72, 0x5F, 0x74, 0x65, 0x78, 0x74, 0x22, 0x3A, 0x20, 0x22, 0x50, 0x6C,
0x65, 0x61, 0x73, 0x65, 0x20, 0x69, 0x6E, 0x70, 0x75, 0x74, 0x20, 0x6D, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x22, 0x2C, 0x0A, 0x09, 0x09, 0x09, 0x22, 0x69, 0x73, 0x5F, 0x65, 0x6E, 0x61, 0x62,
0x6C, 0x65, 0x22, 0x3A, 0x20, 0x74, 0x72, 0x75, 0x65, 0x0A, 0x09, 0x09, 0x7D, 0x2C, 0x0A, 0x09,
0x09, 0x22, 0x77, 0x69, 0x64, 0x67, 0x65, 0x74, 0x5F, 0x6C, 0x69, 0x73, 0x74, 0x22, 0x3A, 0x20,
0x5B, 0x5D, 0x0A, 0x09, 0x7D, 0x0A, 0x7D, 0x0A, 0x7D
};
#endif /* __wx_widget_config_json_h_included */ -
我直接把示例代码的json按如下修改也不行
{
"version": {
"major": 1,
"minor": 0
},
"main_interface": {
"floating_window": {
"is_enable": true
},
"speaker": {
"is_enable_tts": true,
"is_enable_voice": true
},
"widget_list": [
{
"widget_index": 0,
"widget_type": "button",
"widget_name": "Button",
"icon_file_set": {
"icon_file_name_selected": "icon_button1.png",
"icon_file_name_unselected": "icon_button1.png"
},
"customize_rc_buttons_config": {
"is_enable": true,
"mapping_config_display_order": 0
}
},
{
"widget_index": 1,
"widget_type": "button",
"widget_name": "Button 1",
"icon_file_set": {
"icon_file_name_selected": "icon_button2.png",
"icon_file_name_unselected": "icon_button2.png"
},
"customize_rc_buttons_config": {
"is_enable": true,
"mapping_config_display_order": 1
},
{
"widget_index": 2,
"widget_type": "button",
"widget_name": "Button 2",
"icon_file_set": {
"icon_file_name_selected": "icon_button2.png",
"icon_file_name_unselected": "icon_button2.png"
},
"customize_rc_buttons_config": {
"is_enable": true,
"mapping_config_display_order": 2
},
{
"widget_index": 3,
"widget_type": "button",
"widget_name": "Button 3",
"icon_file_set": {
"icon_file_name_selected": "icon_button2.png",
"icon_file_name_unselected": "icon_button2.png"
},
"customize_rc_buttons_config": {
"is_enable": true,
"mapping_config_display_order": 3
}
}
]
},
"config_interface": {
"text_input_box": {
"widget_name": "TextInputBox",
"placeholder_text": "Please input message",
"is_enable": true
},
"widget_list": [
{
"widget_index": 4,
"widget_type": "button",
"widget_name": "Button 4",
"customize_rc_buttons_config": {
"is_enable": true,
"mapping_config_display_order": 4
}
},
{
"widget_index": 5,
"widget_type": "scale",
"widget_name": "Scale 5",
"customize_rc_buttons_config": {
"is_enable": true,
"mapping_config_display_order": 5,
"button_value_step_length": 5
}
},
{
"widget_index": 6,
"widget_type": "int_input_box",
"widget_name": "Integer Input Box 6",
"int_input_box_hint": "unit:s"
},
{
"widget_index": 7,
"widget_type": "switch",
"widget_name": "Switch 7",
"customize_rc_buttons_config": {
"is_enable": true,
"mapping_config_display_order": 7
}
},
{
"widget_index": 8,
"widget_type": "list",
"widget_name": "List 8",
"list_item": [
{
"item_name": "Item 1"
},
{
"item_name": "Item 2"
},
{
"item_name": "Item 3"
},
{
"item_name": "Item 4"
}
],
"customize_rc_buttons_config": {
"is_enable": true,
"mapping_config_display_order": 8
}
}
]
}
}
请先登录再写评论。
评论
3 条评论