emWin电脑端模拟器之Progress Bar进度条控件

2024-10-17 04:37:50

1、在目录SeggerEval_WIN32_MSVC_MinGW_GUI_V542中打开SimulationTrial.sln解决方案。打开SWIPELIST_Demo.c文件,找到MainTask()函数,即为入口函数。打开LCDConf.h文件,找到#define XSIZE_PHYS 800 #define YSIZE_PHYS 500修改模拟器屏幕尺寸大小。

emWin电脑端模拟器之Progress Bar进度条控件emWin电脑端模拟器之Progress Bar进度条控件emWin电脑端模拟器之Progress Bar进度条控件emWin电脑端模拟器之Progress Bar进度条控件

2、int LCD_XWIDTH_SIZE = 0;int LCD_YHIGH_SIZE = 0;void MainTask(void){ GUI_Init(); GUI_UC_SetEncodeUTF8(); GUI_SetBkColor(GUI_WHITE); GUI_SetColor(GUI_BLUE); GUI_Clear(); LCD_XWIDTH_SIZE = LCD_GetXSize(); LCD_YHIGH_SIZE = LCD_GetYSize(); GUI_SetColor(0xFF901E); GUI_FillRect(0, 0, LCD_XWIDTH_SIZE, 30); GUI_SetFont(&GUI_Font8x18); GUI_SetBkColor(0xFF901E); GUI_SetColor(GUI_WHITE); GUI_DispStringAt("emWin Demo For Progress Bar", 270, 7); GUI_SetColor(0xFF901E); GUI_DrawLine(560, 31, 560, LCD_YHIGH_SIZE); GUI_SetColor(GUI_BLACK); GUI_SetBkColor(GUI_WHITE); GUI_DispStringAt("LCD X Physics Size : px", 570, 45); GUI_DispDecAt(LCD_XWIDTH_SIZE, 735, 45, 3); GUI_DispStringAt("LCD Y Physics Size : px", 570, 70); GUI_DispDecAt(LCD_YHIGH_SIZE, 735, 70, 3); GUI_DrawLine(560, 95, LCD_XWIDTH_SIZE, 95); while (1) { GUI_Delay(200); }}

emWin电脑端模拟器之Progress Bar进度条控件emWin电脑端模拟器之Progress Bar进度条控件

3、#define PROG_BAR1_MIN_VALUE 0#define PROG_BAR2_MIN_VALUE 0#define PROG_BAR3_MIN_VALUE 1000#define PROG_BAR1_MAX_VALUE 99#define PROG_BAR2_MAX_VALUE 500#define PROG_BAR3_MAX_VALUE 9999int LCD_XWIDTH_SIZE = 0;int LCD_YHIGH_SIZE = 0;void MainTask(void){ PROGBAR_Handle progBar1; PROGBAR_Handle progBar2; PROGBAR_Handle progBar3; int curValueBar1 = PROG_BAR1_MIN_VALUE; int curValueBar2 = PROG_BAR2_MIN_VALUE; int curValueBar3 = PROG_BAR3_MIN_VALUE; GUI_Init(); GUI_UC_SetEncodeUTF8(); GUI_SetBkColor(GUI_WHITE); GUI_SetColor(GUI_BLUE); GUI_Clear(); GUI_DispStringAt("Progress Bar1", 50, 70); progBar1 = PROGBAR_CreateEx(170, 65, 300, 20, 0, (WM_CF_SHOW | WM_CF_CONST_OUTLINE), 0, 0); PROGBAR_SetFont(progBar1, &GUI_Font8x18); PROGBAR_SetMinMax(progBar1, PROG_BAR1_MIN_VALUE, PROG_BAR1_MAX_VALUE); PROGBAR_SetValue(progBar1, PROG_BAR1_MIN_VALUE); GUI_DispStringAt("Progress Bar2", 50, 120); progBar2 = PROGBAR_CreateEx(170, 115, 300, 20, 0, (WM_CF_SHOW | WM_CF_CONST_OUTLINE), 0, 0); PROGBAR_SetFont(progBar2, &GUI_Font8x18); PROGBAR_SetMinMax(progBar2, PROG_BAR2_MIN_VALUE, PROG_BAR2_MAX_VALUE); PROGBAR_SetValue(progBar2, PROG_BAR2_MIN_VALUE); GUI_DispStringAt("Progress Bar3", 50, 170); progBar3 = PROGBAR_CreateEx(170, 165, 300, 20, 0, (WM_CF_SHOW | WM_CF_CONST_OUTLINE), 0, 0); PROGBAR_SetFont(progBar3, &GUI_Font8x18); PROGBAR_SetMinMax(progBar3, PROG_BAR3_MIN_VALUE, PROG_BAR3_MAX_VALUE); PROGBAR_SetValue(progBar3, PROG_BAR3_MIN_VALUE); GUI_DrawLine(0, 230, 560, 230); while (1) { GUI_Delay(200); }}

emWin电脑端模拟器之Progress Bar进度条控件emWin电脑端模拟器之Progress Bar进度条控件emWin电脑端模拟器之Progress Bar进度条控件emWin电脑端模拟器之Progress Bar进度条控件emWin电脑端模拟器之Progress Bar进度条控件emWin电脑端模拟器之Progress Bar进度条控件

6、初始化 emWin 内部数据结构和变量。int GUI_Init(void);启用 UTF-8 编码。void GUI_UC_SetEncodeUTF8(void);设置当前背景色。GUI_COLOR GUI_SetBkColor(GUI_COLOR Color);设置当前前景色。void GUI_SetColor(GUI_COLOR Color);清除当前窗口。void GUI_Clear(void);分别返回 LCD 的物理 X 尺寸和 Y 尺寸 (单位:像素)。int LCD_GetXSize(void);int LCD_GetYSize(void);在当前窗口中的指定位置绘制填充的矩形区域。void GUI_FillRect(int x0, int y0, int x1, int y1);设置用于文本输出的字体。const GUI_FONT * GUI_SetFont(const GUI_FONT * pNewFont);在当前窗口的指定位置处,使用当前字体显示作为参数的字符串。void GUI_DispStringAt(const char * s, int x, int y);在当前窗口中绘制从某个指定起点到某个指定终点之间的线(绝对坐标)。void GUI_DrawLine(int x0, int y0, int x1, int y1);在当前窗口的指定位置处,使用当前字体显示指定字符数的十进制数值。void GUI_DispDecAt(I32 v, I16P x, I16P y, U8 Len);

emWin电脑端模拟器之Progress Bar进度条控件emWin电脑端模拟器之Progress Bar进度条控件emWin电脑端模拟器之Progress Bar进度条控件emWin电脑端模拟器之Progress Bar进度条控件emWin电脑端模拟器之Progress Bar进度条控件emWin电脑端模拟器之Progress Bar进度条控件emWin电脑端模拟器之Progress Bar进度条控件emWin电脑端模拟器之Progress Bar进度条控件emWin电脑端模拟器之Progress Bar进度条控件emWin电脑端模拟器之Progress Bar进度条控件emWin电脑端模拟器之Progress Bar进度条控件emWin电脑端模拟器之Progress Bar进度条控件emWin电脑端模拟器之Progress Bar进度条控件
猜你喜欢