[C] 纯文本查看 复制代码 /*
*********************************************************************************************************
* 函 数 名: MainTask
* 功能说明: GUI主函数
* 形 参: 无
* 返 回 值: 无
*********************************************************************************************************
*/
void MainTask(void)
{
/* 避免上电后瞬间的撕裂感 */
LCD_SetBackLight(0);
/*
触摸校准函数默认是注释掉的,电阻屏需要校准,电容屏无需校准。如果用户需要校准电阻屏的话,执行
此函数即可,会将触摸校准参数保存到EEPROM里面,以后系统上电会自动从EEPROM里面加载。
*/
#if 0
LCD_SetBackLight(255);
LCD_InitHard();
TOUCH_Calibration(2);
#endif
/*初始化配置 */
gx_initconfig();
/* 配置显示屏 */
gx_studio_display_configure(DISPLAY_1, stm32h7_graphics_driver_setup_565rgb,
LANGUAGE_ENGLISH, DISPLAY_1_THEME_1, &root);
/* 创建窗口
显存 - > canvas画布 - > root window -> window/widget
root window 是创建到canvas上的容器,可以认为就是类似emWin的桌面窗口,这样都创建后,一般我们各种窗口控件都可以创建到root window上
就跟使用emWin一样,将各种窗口创建到桌面窗口。
*/
/* 同一个父窗口下,禁止聚焦后,先后顺序显示,如果使能聚焦,聚焦窗口将再最前面显示 */
gx_studio_named_widget_create("window", (GX_WIDGET *)root, (GX_WIDGET **)&pScreen);
gx_studio_named_widget_create("window_1", (GX_WIDGET *)root, (GX_WIDGET **)&pScreen);
gx_studio_named_widget_create("window_2", (GX_WIDGET *)NULL, (GX_WIDGET **)&pScreen);
/* 显示根窗口 */
gx_widget_show(root);
/* 启动GUIX */
gx_system_start();
tx_thread_sleep(300);
LCD_SetBackLight(255);
while(1)
{
tx_thread_sleep(20);
}
}
|