OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 7455|回复: 2

GUI_Clear();只有绘制的图像下面才是背景色,并没有整屏清屏

[复制链接]

13

主题

29

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
223
金钱
223
注册时间
2012-12-3
在线时间
19 小时
发表于 2013-12-28 21:48:30 | 显示全部楼层 |阅读模式
void GUI_Clear(void)
{ GUI_GotoXY(0,0); /* Reset text cursor to upper left */ GUI_ClearRect(GUI_XMIN, GUI_YMIN, GUI_XMAX, GUI_YMAX); }


GUI_Init(); GUI_SetBkColor(GUI_BLACK); GUI_Clear(); GUI_SetColor(GUI_WHITE); GUI_SetFont(&GUI_Font8x16);

执行过这一段代码之后,GUI_Clear(); 函数并没有清整块屏只是绘制的图像下面才是背景色,其他位置并没有被清屏,我查找之后发现,在 GUI_Init函数中也有清屏函数,删掉之后并无影响,这是什么原因呢?

int GUI_Init(void) {
  int r;
  GUI_DEBUG_LOG("\nGUI_Init()");
  /* Init system wide globals first */
  GUI_DecChar = '.';
  GUI_X_Init();
  /* Init context */
  _InitContext(&GUI_Context);
  GUITASK_INIT();
  r = LCD_Init();
  #if GUI_WINSUPPORT
    WM_Init();
  #endif
  GUITASK_COPY_CONTEXT();
  #if defined(GUI_TRIAL_VERSION)
  {
    int i;
    for (i = 0; i < 10; i++) {
      GUI_DispString("This uC-GUI library\n"
                    "is for evaluation\n"
                    "purpose only.\n"
                    "A license is\n"
                    "required to use\n"
                    "it in a product\n\n"
                    "www.micrium.com\n");
      GUI_GotoXY(0, 0);
    }
  }
  GUI_Clear();
  #endif
  return r;
}






正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

13

主题

29

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
223
金钱
223
注册时间
2012-12-3
在线时间
19 小时
 楼主| 发表于 2013-12-29 10:23:59 | 显示全部楼层
我把这个清屏函数改为了TFT_Clear(BLACK);清屏是正常了,不知道有没有什么问题,希望各位赐教。。。
回复 支持 反对

使用道具 举报

12

主题

54

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1070
金钱
1070
注册时间
2015-10-21
在线时间
128 小时
发表于 2016-7-13 07:13:02 | 显示全部楼层
一眼万年 发表于 2013-12-29 10:23
我把这个清屏函数改为了TFT_Clear(BLACK);清屏是正常了,不知道有没有什么问题,希望各位赐教。。。

我也遇到同样的问题,换成TFT_Clear(Color)就可以了,这是为什么啊?请教楼主。。。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-16 02:58

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表