如果做动态曲线图
来源:互联网 发布:创建表的sql语句约束 编辑:程序博客网 时间:2024/04/30 02:50
可能有不少的地方都要做这样的动态的曲线图的来表达流量的动态情况。我这里做了一个这样的CStatic控件的类。能动态的显示出流量的趋势
主要就重载CStatic类的OnPaint函数。
使用一个
typedef vector<CPoint>CPointArr;
来保存当前需要连结的点。
在OnPaint函数里写好这样的内容就行了。
void CMyStatic::OnPaint()
{
CPaintDC dc(this);
DrawBK(dc);
if (m_PointArr.size()>=2)
{
for(int i=0;i<m_PointArr.size()-1;i++)
{
DrawLine(dc,m_PointArr[i],m_PointArr[i+1],m_ColorLi);
}
}
}
画背景的函数为:
void CMyStatic::DrawBK(CDC& dc)
{
CRect rect;
GetClientRect(&rect);
dc.FillSolidRect(&rect,m_ColorBk);
this->GetWindowRect(&rect);
ScreenToClient(&rect);
CSize TGSize;
TGSize.cx = rect.right - rect.left;
TGSize.cy = rect.bottom - rect.top;
//横线
int nH=TGSize.cy/20;
for(int i=1;i<=nH;i++)
{
CPoint p1(rect.left,rect.top+20*i);
CPoint p2(rect.right,rect.top+20*i);
DrawLine(dc,p1,p2,m_ColorFram);
}
//图竖线
int nZ=TGSize.cx/20;
for( i=1;i<=nZ;i++)
{
CPoint p1(rect.left+20*i,rect.top);
CPoint p2(rect.left+20*i,rect.bottom);
DrawLine(dc,p1,p2,m_ColorFram);
}
}
void CMyStatic::DrawLine(CDC& dc,CPoint _p1,CPoint _p2,COLORREF _color)
{
CPen newPen(PS_SOLID,1,_color);
CPen* oldPen=dc.SelectObject(&newPen);
dc.MoveTo(_p1);
dc.LineTo(_p2);
dc.SelectObject(oldPen);
}
void CMyStatic::AddPoint(int nCount)
{
nCount=100-nCount;
TRACE("加入的点的y轴的内容:%d/n",nCount);
CRect rect;
GetClientRect(&rect);
//移动以前的
for(int i=0;i<m_PointArr.size();i++)
{
m_PointArr[i].Offset(-10,0);
}
//是不是太多
int nZ=rect.Width()/10+1;
if (m_PointArr.size()>=nZ)
{
m_PointArr.erase(m_PointArr.begin());
CPoint temp=m_PointArr[m_PointArr.size()];
temp.x=rect.left;
m_PointArr[m_PointArr.size()]=temp;
}
/*转换成100%*/
CPoint point(rect.right,rect.Height()*nCount/100);
m_PointArr.push_back(point);
Invalidate();
}
- 如果做动态曲线图
- excel做曲线图
- Amcharts 实现动态曲线图
- highcharts做柱状图与曲线图
- Android 绘制动态的曲线图
- 使用AChartEngine画动态曲线图
- 使用AChartEngine画动态曲线图
- Qt实战开发-动态曲线图
- 很久以前做的一个外汇牌价的曲线图
- JFreeChart做的曲线图和饼图
- 曲线图
- 曲线图
- 如果想做......如果不想做......
- jfreechart在applet中画动态曲线图
- 使用 Dojo 创建动态曲线图和图表
- WPF 动态模拟CPU 使用率曲线图
- WPF 动态模拟CPU 使用率曲线图
- highchart与struts2实现动态曲线图
- 献给才毕业一两年的朋友
- 请教COM组件编程的好例子,好网址?
- 七加三等于十
- 请教高手:关于在delphi中编译时对输出文件分类的问题?
- 几个有趣的Google新鲜技巧玩法
- 如果做动态曲线图
- 第一次用blog发个文章试试
- ASP遗留的二十大积习
- 32个经典java问题
- 从下向上弹出窗口(像MSN一样有新消息)
- rain cats and dogs
- C/C++和Java的经典书籍
- 一次处理根目录空间100%占用的过程--失败
- 精品软件★综合更新