博客
关于我
曲线控件类
阅读量:250 次
发布时间:2019-03-01

本文共 566 字,大约阅读时间需要 1 分钟。

重写曲线控件类,解决CPU占用过高的问题.采用GDI+绘图,提高效率的方法:就是尽量减少GDI+绘图函数的调用。将图像分为前景和背景,背景是不变的的部分。第一次绘制好后,存在内存中。在需要的时候复制出来。前景是画线函数,在实时绘图过程中,会频繁调用这个函数。在类中使用的了三个位图对象,作为缓冲区:

1.背景绘制到一个位图A上.
2.曲线部分绘制到一个位图B上.
3.最后合成图为C,然后复制的窗口上显示.
调用接口简化.如下:

__fastcall TForm1::TForm1(TComponent* Owner)//初始化曲线控件        : TForm(Owner){    TRect r( 20,20,700,300);    p = new TLine(this,r);    p->Parent = Form1;    p->Set_max_min_value(100,-100);//设置最大值,最小值}
void __fastcall TForm1::Timer1Timer(TObject *Sender){    Randomize();    int a = random(100);    int b = random(2);    p->Push(a*pow(-1,b));//添加数据,并显示}

你可能感兴趣的文章
netty 主要组件+黏包半包+rpc框架+源码透析
查看>>
Vue过渡 & 动画---vue工作笔记0014
查看>>
Netty 异步任务调度与异步线程池
查看>>
Netty 的 Handler 链调用机制
查看>>
Netty 编解码器详解
查看>>
Netty 解决TCP粘包/半包使用
查看>>
Netty 调用,效率这么低还用啥?
查看>>
Netty+Protostuff实现单机压测秒级接收35万个对象实践经验分享
查看>>
Netty+SpringBoot+FastDFS+Html5实现聊天App详解(一)
查看>>
netty--helloword程序
查看>>
Netty5.x 和3.x、4.x的区别及注意事项(官方翻译)
查看>>
netty——bytebuf的创建、内存分配与池化、组成、扩容规则、写入读取、内存回收、零拷贝
查看>>
netty——Channl的常用方法、ChannelFuture、CloseFuture
查看>>
netty——Future和Promise的使用 线程间的通信
查看>>
Vue输出HTML
查看>>
netty——黏包半包的解决方案、滑动窗口的概念
查看>>
Netty中Http客户端、服务端的编解码器
查看>>
Netty中使用WebSocket实现服务端与客户端的长连接通信发送消息
查看>>
Netty中实现多客户端连接与通信-以实现聊天室群聊功能为例(附代码下载)
查看>>
Netty中的组件是怎么交互的?
查看>>