硬汉嵌入式论坛

 找回密码
 立即注册
查看: 4924|回复: 0
收起左侧

[emWin教程入门篇] 【STemWin教程】第60章 如何在对话框上绘制2D图形

[复制链接]

740

主题

1326

回帖

3546

积分

管理员

春暖花开

Rank: 9Rank: 9Rank: 9

积分
3546
QQ
发表于 2015-3-16 11:47:28 | 显示全部楼层 |阅读模式
特别说明:完整STemWin的1-60期教程和配套实例下载地址:链接
第60章 如何在对话框上绘制2D图形


    本期教程主要给大家讲解如何在对话框上绘制2D图形。
    60. 1 使用uCGUIBuler绘制2D图形
    60. 2 总结

60.1 使用uCGUIBuler绘制2D图形
    通常情况下,如果大家想在对话框上面绘制2D图形的话,可以将STemWin的2D绘制函数放在对话框回调函数中的WM_PAINT消息中实现。
    这里跟大家讲一下如何利用uCGUIBulder4.0在对话框上面绘制简单的横线和竖线。

60.1.1 第一步:建立如下界面
60.1.png


60.1.2 第二步:添加水平和垂直线
    左侧工具箱中有水平线和垂直线的选项:
60.2.png

    下面在对话框上添加一个水平线和一个垂直线,效果如下:
60.3.png

    选中水平线或者垂直线在右下角设置其属性:
60.4.png

    设置好后,显示效果如下:
60.5.png


60.1.3 第三步:将生成代码添加到模拟器中显示
    uCGUIBulder4.0生成代码中对话框回调函数中WM_PAINT消息执行的函数如下:
  1. /*****************************************************************
  2. **      FunctionName:void PaintDialog(WM_MESSAGE * pMsg)
  3. **      Function: to initialize the Dialog items
  4. **                                                      
  5. **      call this function in _cbCallback --> WM_PAINT
  6. *****************************************************************/
  7. void PaintDialog(WM_MESSAGE * pMsg)
  8. {
  9.     WM_HWIN hWin = pMsg->hWin;
  10.     GUI_SetColor(0x000000);
  11.     GUI_FillRect(125,59,274,68);
  12.     GUI_SetColor(0x0000ff);
  13.     GUI_FillRect(321,59,335,208);
  14. }
复制代码
    其实里面就是简单的2D函数,如果大家想显示其他的2D图形,只需在这个函数里面加上相应的函数处理即可。
    在模拟器上面显示uCGUIBulder生成的代码(生成的代码在本期教程配套的例子中),效果如下:
60.6.png


60.2 总结
    通过上面讲解的如何在对话框上面显示简单的横线和竖线,大家可以尝试相同的方法在对话框上面显示其它的2D图形。
努力打造安富莱高质量微信公众号:点击扫描图片关注
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-18 10:29 , Processed in 0.254787 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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