相较于上一版本,此版本主要修改内容:
1加入航迹数据记录与回放功能,采用SQLite数据库记录接收到的航迹数据,并支持数据回放。
2支持部分SQLite数据库操作功能,包括数据删除、查询等;
3支持虚拟列表功能;
回放效果:
数据库管理界面:
SQLite是一种开源的嵌入式数据,支持大部分SQL语法,最大可支持2TB数据容量,运行速度不错。SQLite完全开源,其源代码可以直接加入到VS工程中。其使用也十分方便,只需要掌握最基本的数据写入、查找即可。SQLite最大的缺点在于对网络访问、并行访问的支持不全面。因而不建立用于高并发访问场合,建议用于小型单机数据库建设。
在进行数据库查询时,因为记录的航迹数据量十分巨大,软件最大的速度瓶颈不在于数据库的访问和读取,而在于ListControl显示,在写入大量数据时ListControl会出现卡死现象,使用虚拟列表功能,可以在一定的程序上解决这个问题,当然并不能完全解决,在5万条数据以下,显示速度还可以接受,ListControl更新时不会出现长时间等待的情况。
虚拟列表功能是十分成熟的,网络上有现成的开源源代码。下面将源代码贴出来: