基于Qt的旅游景区景气指数分析系统设计与实现
2020-12-01刘斌
摘要:旅游景区服务应该随着时代的变化不断地创新和发展。利用景区的各种数据(如游客数量、住宿比例等),通过专家的公式进行计算和分析,得出旅游景区的每个方面的景气指数。使用该指数对景区内未达标的方面进行改进,对突出的方面进行大力发展,从而大幅提升旅游景区的整体水平。该文设计以什刹海景为例的旅游景区景气指数分析系统,并通过Qt软件架构进行跨平台实现。
关键词:Qt;旅游景区;软件设计
中图分类号:G350 文献标识码:A
文章编号:1009-3044(2020)29-0006-04
1 背景
随着信息时代的不断发展和变化,旅游景区服务已经不仅仅是通过经验来进行管理,还要通过科学计算和分析进行管理。通过对旅游景区统计数据(包括游客数量、住宿比例等)使用专家的公式进行计算并分析,得出景区各方面的景气指数。通过对该指数对未达标的方面进行改进,对有突出优势的方面进行大力发展,达到大幅提高旅游景区的整体水平的目的[1-3]。本文通过Qt软件框架[4-6]实现了一个通用的跨平台的旅游景区景气指数分析系统。
作为一个跨平台的应用程序架构,Qt提供了用户界面开发的几乎所有功能。作为Qt开发IDE工具,Qt Creator提供了全面的C++开发支持其中包括,界面设计,编译调试等,也极大简化了应用的开发难度。Qt的框架结构如图1所示。
2 软件设计
2.1软件需求
什刹海景区景气指数分析系统需要满足以下几个需求:
1)系统需要根据给出的数据(如表1所示)计算并分析景区的景气指数;
2)系统需要将数据存储到数据库中;
3)系統需要可以计算和分析结果导出到Excel文件中;
4)系统需要对分析结果进行可视化展示并截图;
5)系统需要能够在Windows、Mac和Linux平台上都可以使用。
2.2 系统结构
对本文系统设计分为四大模块分别是Qt内部界面模块、Qt数据库模块、景区景气指标计算模块和Excel操作QtⅪsx,具体结构图,如图2所示。
1)Qt内部界面模块,用于实现系统的界面中的按钮文本框等显示界面功能;
2)Qt数据库模块,用于管理系统所使用的数据;
3)景区景气指标计算模块,用于根据某专家的公式利用提供的数据计算七种指数(如表2所示),并进行分析。
4)QtXlsx模块,用于系统对Excel进行操作。
3 软件实现
什刹海景区景气指数在Linux环境下使用C++语言用Qt开发架构开发。具体开发环境如表3所示。
3.1 系统界面绘制
作为Qt开发中图形界面绘制的工具Qt Designer可以给开发人员提供良好的编程体验。建立并绘制以xxx.ui文件,编译生成ui_xxx.h头文件。图3为Qt Designer界面。
该系统需要通过可视化方式显示指数,代码如下表4所示,效果如图4所示。
3.2 数据库SQLite3操作处理
Qt对Oracle、SQL Server、DB2、SyBase、MySQL、Post-greSQL、SQLite3等数据库都有很好的支持。本文的系统只需要使用小巧的SQLite3作为数据库即可,图5为DB Browser forSQLite对SQLite3管理。
Qt使用QSqIDatabase类来管理数据库。该类中包括所有数据库的管理行为,表5是对于数据库的操作代码SQLite3示例代码。
3.3 Excel操作处理
使用第三方组件QtXlsx对Excel进行处理,使用方法如表6所示。
3.4 跨平台软件实现
系统需要可以在Windows,Mac和Linux环境中使用,系统在Linux下开发因此不用介绍其实现。下面分别介绍Mac和Windows软件开发实现。
3.4.1 Mac系统
Mac上打包Qt软件程序。需要使用otool和macdeployqt两个工具,otool用于定位适用的动态链接库文件,macdeployqt用于对生成的Release版本的程序进行打包。具体步骤:
1)用Qt Creator编译生成Release版本程序,并测试通过;
2)进入build-q***-Qt_5_2_l_clang_64-Release文件夹;
3)在命令行下使用“otool L”命令查看适用的动态链接库文件,如图6所示。如缺少文件,添加到环境变量中;
4)应用添加图标,需要生成Icns文件,然后在pro文件中添加lcns文件:
ICON= myapp.icns
5)在命令行下使用macdeployqt进行打包,生成的App文件再使用Disk Utility完成软件封装(如图7所示)。
3.4.2 Windows系统
Windows上打包Qt软件程序使用windeployqt.工具生成程序。但生成的程序会漏掉一些文件,因此需要手动添加一些动态链接库。具体步骤如下:
1)用VMware Workstation建立Windows 7虚拟机,安装Qt开发完整的平台;
2)将QtXlsx源程序拷贝到虚拟机中,安装Perl,编译安装该模块;
3)将待打包应用程序源代码拷贝到虚拟机中,编译成re-alse版本应用;
4)将应用拷到一个独立文件夹中用windeployqt,生成需要的动态链接库文件;
5)将其他需要的动态链接库文件(如图8所示)从Qt安装目录中拷贝到该目录中;
6)应用添加图标需要建立一个rc文件说明iCO图标文件,在pro文件中添加rc文件,代码如表7所示。
7)最后使用inno setup工具对该目录进行封装即可生成一个Windows应用程序。
3.5 软件实现效果
本文的基于Ot的旅游景区景气指数分析系统,分别在VM-ware Workstation建立的Windows、Mac和Linux虚拟机通过黑盒测试,满足了所需的各项要求。其中包括7个指数,即在各个年度的景区指数、指数动态标识、计算分析全部数据、导出全部数据、数据截图等功能。使用界面如图9所示。
4 结束语
本文设计了一个旅游景区景气指数分析系统,通过该系统景区管理者可以得知景区管理中哪些方面需要努力改正,哪些方面需要突出优势,从而将景区治理的更好。但系统中的可视化效果和分析结果的展示还有所欠缺,这也是未来改进的方向。
参考文献:
[1]黄先开,张丽峰,丁于思.百度指数与旅游景区游客量的关系 及预测研究——以北京故宫为例[J].旅游学刊,2013,28(11):93-100.
[2]彭文英,李俊.北京旅游景区游客满意度及其影响因素分析[J].资源开发与市场,2008,24(6):564-567.
[3]汪侠,顾朝林,梅虎,旅游景区顾客的满意度指数模型[J].地理学报,2005,60(5):807-816.
[4]黄艳芳.基于Qt4的图形用户界面程序设计与游戏开发[J].电子设计工程,2011,19(17):49-53.
[5]刘艳青,苏桂莲,基于Qt4的图形用户界面程序的设计与实现[J].现代计算机(专业版),2009(3):170-172.
[6]陈琦.QT的编程技术及应用[J].科技信息,2008(33):503-504.
[7]Qt[EB/O L].[2020-03 -10].http://qt-proj ect.org/.
[8] Qt wiki[EB/OL].[2020-03-ll].http://zh.wikipedia.org/zh-cn/qt.
[9] Qt開发文档[EB/OL].[2020-03- lO].http://qt-proj ect.org/doc/.
[10] SQLite[EB/OL].[2020-03-15].http://sqlite.org/.
[11] CIMP[EB/OL].[2020-03-12].http://www.gimp.org/.
[12] Inno setup tools[EB/OL].[2020-03-17].http://www.jrsoftware.org/isinfo.php.
[13] QtXlsx[EB/OL].[2020-03-19].http://qtxlsx.debao.me/.
[14]draw.io[EB/OL].[2020-03 -14].https://app.diagrams.net/.
【通联编辑:谢媛媛】
作者简介:刘斌(1983-)男,辽宁人,中级工程师,硕士,研究方向为大数据挖掘、自然语言处理。