这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界» 论坛首页» 嵌入式开发» MCU» 只有两个文件的mini型GUI试玩

共2条 1/1 1 跳转至

只有两个文件的mini型GUI试玩

高工
2017-11-27 16:28:37 打赏

这款GUI名称是uGUI, 官网:uGUI

源码:ugui v0.3.zip


官网展示的效果图都还不错。贴几张:


在emWIN的模拟器上来运行这个GUI:

将两个文件添加到工程,ugui.c ugui.h

在ugui.h进行修改:

1、屏蔽include "system.h"

2、

#if 0 #define __UG_CONST const typedef uint8_t UG_U8; typedef int8_t UG_S8; typedef uint16_t UG_U16; typedef int16_t UG_S16; typedef uint32_t UG_U32; typedef int32_t UG_S32; #else #define __UG_CONST const typedef unsigned char UG_U8; typedef signed char UG_S8; typedef unsigned short UG_U16; typedef signed short UG_S16; typedef unsigned int UG_U32; typedef signed int UG_S32; #endif

进行GUI的初始化:

/* for uGUI */ UG_GUI test_uGUI; void __draw_pixel(UG_S16 x, UG_S16 y, UG_COLOR color) { GUI_SetColor(color); GUI_DrawPixel(x, y); } /* end */ void MainTask(void) { WM_HWIN hWin; #ifdef WIN32 // WM_SetCreateFlags(WM_CF_MEMDEV); #endif WM_MOTION_Enable(1); WM_MULTIBUF_Enable(1); GUI_Init(); UG_Init(&test_uGUI, __draw_pixel, 480, 272); // initialize uGUI UG_SetForecolor(GUI_RED); UG_DrawCircle(100, 100, 50, GUI_RED); // draw a circle to test uGUI UG_FontSelect(&FONT_6X8); UG_PutString(50, 170, "I'm uGUI"); GUI_SetColor(GUI_RED); GUI_DrawCircle(230, 100, 50); // compare with uGUI GUI_DispStringAt("I'm emWin",180, 170); while (1) { GUI_Delay(50); } }

运行效果:

QQ截图20171127162659.png

有兴趣的可以玩玩。




关键词: ugui minigui

专家
2017-11-28 12:34:08 打赏
2楼

好像挺好玩的。


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册]