emWin 2天速成实例教程007_Graph波形曲线图形控件使用方法
2016-11-27 19:34
573 查看
备注:(1)打开工程目录下的"Exe\GUISimulationDebug.exe"即可看到效果。(2)看完教程000~005就基本会用emWin做项目,其他章节可以需要时再参考。
使用GUIBuilder V5.30创建如下页面并保存为C文件,然后添加到脱机模拟仿真平台CodeBlocks:
(1)在WM_INIT_DIALOG消息中(窗口初始化时程序跑到这里)添加GRAPH控件的初始化代码:
hItem =WM_GetDialogItem(pMsg->hWin, ID_GRAPH_0);
GRAPH_SetBorder(hItem,40, 5, 5, 30);
GRAPH_SetGridVis(hItem,1);
GRAPH_SetGridFixedX(hItem,1);
GRAPH_SetGridDistY(hItem,25);
GRAPH_SetGridDistX(hItem,50);
hScaleV =GRAPH_SCALE_Create(30, GUI_TA_RIGHT, GRAPH_SCALE_CF_VERTICAL, 25);//创建和增加垂直范围尺度标签
GRAPH_SCALE_SetTextColor(hScaleV,GUI_RED); //设置标签字体颜色
GRAPH_AttachScale(hItem,hScaleV); //将标签添加到垂直方向
hScaleH =GRAPH_SCALE_Create(150, GUI_TA_HCENTER, GRAPH_SCALE_CF_HORIZONTAL, 50);//创建和增加水平范围尺度标签
GRAPH_SCALE_SetTextColor(hScaleH,GUI_DARKGREEN); //设置字体颜色
GRAPH_AttachScale(hItem,hScaleH); //添加到水平方向
pdataGRP =GRAPH_DATA_YT_Create(GUI_GREEN, 500/*最大数据个数*/, 0, 0);//创建一个数据曲线,可创建多个曲线
GRAPH_AttachData(hItem,pdataGRP); //为绘图控件添加数据对象
(2)创建一个软件定时器TIMER:
WM_HWINCreateFramewin(void) {
WM_HWIN hWin;
hWin = GUI_CreateDialogBox(_aDialogCreate,GUI_COUNTOF(_aDialogCreate), _cbDialog, WM_HBKWIN, 0, 0);
WM_CreateTimer(WM_GetClientWindow(hWin),1, 300, 0); //创建一个软件定时器
return hWin;
}
(3)到这里GRAPH控件创建完毕,我们使用GRAPH控件显示数据曲线只需做的事情是将获得的数据(比如AD转换值)用GRAPH_DATA_YT_AddValue()函数赋值给GRAPH控件,每赋值一个数据则显示一个点,点和点之间emWin会自动连结起来,无需我们操心:
在此例程中有三个地方给曲线赋值:
(1)TIMER定时器(比如可以在这里定时采集一个数据并显示曲线)
(2)四个Button控件
(3)电脑键盘
以上的例程只说明了GRAPH控件的最基本的应用,更多应用和功能请阅读以下3个官方例程:
源码/软件下载
使用GUIBuilder V5.30创建如下页面并保存为C文件,然后添加到脱机模拟仿真平台CodeBlocks:
(1)在WM_INIT_DIALOG消息中(窗口初始化时程序跑到这里)添加GRAPH控件的初始化代码:
hItem =WM_GetDialogItem(pMsg->hWin, ID_GRAPH_0);
GRAPH_SetBorder(hItem,40, 5, 5, 30);
GRAPH_SetGridVis(hItem,1);
GRAPH_SetGridFixedX(hItem,1);
GRAPH_SetGridDistY(hItem,25);
GRAPH_SetGridDistX(hItem,50);
hScaleV =GRAPH_SCALE_Create(30, GUI_TA_RIGHT, GRAPH_SCALE_CF_VERTICAL, 25);//创建和增加垂直范围尺度标签
GRAPH_SCALE_SetTextColor(hScaleV,GUI_RED); //设置标签字体颜色
GRAPH_AttachScale(hItem,hScaleV); //将标签添加到垂直方向
hScaleH =GRAPH_SCALE_Create(150, GUI_TA_HCENTER, GRAPH_SCALE_CF_HORIZONTAL, 50);//创建和增加水平范围尺度标签
GRAPH_SCALE_SetTextColor(hScaleH,GUI_DARKGREEN); //设置字体颜色
GRAPH_AttachScale(hItem,hScaleH); //添加到水平方向
pdataGRP =GRAPH_DATA_YT_Create(GUI_GREEN, 500/*最大数据个数*/, 0, 0);//创建一个数据曲线,可创建多个曲线
GRAPH_AttachData(hItem,pdataGRP); //为绘图控件添加数据对象
(2)创建一个软件定时器TIMER:
WM_HWINCreateFramewin(void) {
WM_HWIN hWin;
hWin = GUI_CreateDialogBox(_aDialogCreate,GUI_COUNTOF(_aDialogCreate), _cbDialog, WM_HBKWIN, 0, 0);
WM_CreateTimer(WM_GetClientWindow(hWin),1, 300, 0); //创建一个软件定时器
return hWin;
}
(3)到这里GRAPH控件创建完毕,我们使用GRAPH控件显示数据曲线只需做的事情是将获得的数据(比如AD转换值)用GRAPH_DATA_YT_AddValue()函数赋值给GRAPH控件,每赋值一个数据则显示一个点,点和点之间emWin会自动连结起来,无需我们操心:
在此例程中有三个地方给曲线赋值:
(1)TIMER定时器(比如可以在这里定时采集一个数据并显示曲线)
(2)四个Button控件
(3)电脑键盘
以上的例程只说明了GRAPH控件的最基本的应用,更多应用和功能请阅读以下3个官方例程:
源码/软件下载
相关文章推荐
- emWin使用资料收集(一) ----- emWin 2天速成实例教程008_IconView图标控件使用方法
- emWin 2天速成实例教程011_Multipage多页控件使用方法
- emWin 2天速成实例教程009_ListView列表框控件使用方法
- emWin 2天速成实例教程010_Menu标题菜单控件使用方法
- emWin 2天速成实例教程008_IconView图标控件使用方法
- emWin 2天速成实例教程005_控件聚焦和用户消息的使用方法
- emWin 2天速成实例教程015_二维码控件的使用示例
- emWin 2天速成实例教程001_GUIBuilder的使用方法
- emWin 2天速成实例教程006_矩阵键盘、PS2键盘、实体按键消息的使用方法(MDK工程)
- emWin 2天速成实例教程014_BMP位图图片显示以及位图皮肤的使用方法
- emWin 2天速成实例教程016_不规则异形进度条控件实现方法
- emWin 2天速成实例教程003_Framewin和Window窗口控件和2D绘图
- emWin 2天速成实例教程013_修改BUTTON按钮等控件背景皮肤颜色_SetBkColor
- emWin 2天速成实例教程017_屏幕无操作进入待机状态的实现方法
- emWin 2天速成实例教程003_Framewin和Window窗口控件和2D绘图
- emWin 2天速成实例教程-000
- emWin 2天速成实例教程002_多个页面窗口切换
- emWin 2天速成实例教程004_软件定时器(Timer)和位图片动画
- emWin 2天速成实例教程004_软件定时器(Timer)和位图片动画
- emWin 2天速成实例教程002_多个页面窗口切换