emWin的控件显示是由默认的控件绘制函数完成,但emWin凭借其skinning功能可以非常方便的实现自定义控件绘制函数,利用自定义控件绘制函数我们可以非常方便的实现所有控件的BMP位图皮肤,而且支持整幅图片贴图,不需要对整幅图片进行切片分解,功能非常强大。
如上图所示,(x0,y0)为整幅图片的显示坐标,(x1,y1)和(x2,y2)是emWin为控件自动生成的剪切显示坐标,我们只需要调用GUI_DrawBitmap()函数在(x0,y0)显示整幅图片即可,emWin会自动剪切显示出该控件的位图皮肤,非常便捷。 以整幅图片实现emWin位图皮肤可以大大减轻控件贴图的工作量,非常的方便;如果把每个控件对应的图片先切片分解下来,然后再转换成C文件,最后再贴图到控件上面去,那样工作量将是非常恐怖的;保守估计贴图工作效率提高10倍以上。
附件里面的SKIN_xxxx.c是emWin的自定义控件绘制函数,也就是绘制出什么样的控件完全是靠这个函数,可以根据自己的需要修改代码
- 文件大小:
- 4.13 MB
- 下载次数:
- 52
-
本地下载
|