CN116149652A - 一种基于vba的汽车仪表人机交互软件设计方法 - Google Patents
一种基于vba的汽车仪表人机交互软件设计方法 Download PDFInfo
- Publication number
- CN116149652A CN116149652A CN202211706598.7A CN202211706598A CN116149652A CN 116149652 A CN116149652 A CN 116149652A CN 202211706598 A CN202211706598 A CN 202211706598A CN 116149652 A CN116149652 A CN 116149652A
- Authority
- CN
- China
- Prior art keywords
- pixels
- picture
- vba
- attributes
- picture material
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/15—Vehicle, aircraft or watercraft design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/151—Transformation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
- Aviation & Aerospace Engineering (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Processing Or Creating Images (AREA)
Abstract
一种基于VBA的汽车仪表人机交互软件设计方法:步骤1:加载图片;步骤2:将加载后的图片扫描至图片素材目录下;步骤3:配置图片素材的属性:每个图片素材按照多个属性进行自动配置;属性包括该图片素材的名字、图素转为资源文件的格式、图素压缩算法和图素对应的资源文件存储位置;步骤4:将图片按照配置的属性转换成代码与资源文件:全部属性填写完毕后,VBA将每个图素按照其配置的属性,生成调用第三方图片素材转换工具的bat命令,将所有图素的bat命令写入到一个bat脚本中,最后调用bat脚本执行,实现将所有图素转化为符合要求的资源文件。本发明节省大量的人工编码时间,而且工具表现形式为excel,显示直观。
Description
技术领域
本发明涉及一种基于VBA的汽车仪表人机交互软件设计方法。
背景技术
VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,专门用于Office的各应用程序中,如Word、 Excel、 Access等,可以通过VBA编写模块来满足特定的需要,实现用户自己想要的功能。
随着汽车技术的飞速发展,人们需要在汽车仪表上显示的信息也越来越多,汽车仪表也从传统的机电指针式仪表变为到带显示屏的的仪表。而显示屏也从原始的黑白色小屏幕到彩色TFT屏幕甚至是全液晶超大屏。显示屏幕的变大与显示信息的增多,也对仪表HMI软件提出了更高的要求。一是存在大量的显示元素需要通过软件去实现;二是现在汽车仪表往往存在复杂的界面交互,软件就需要实现这些交互逻辑;三是为了追求显示效果,仪表中需要实现诸如开机动画、车速等异形进度条、辅助驾驶警示动画、切换主题风格等显示效果。这些都对汽车仪表HMI软件的开发与维护提出了更高的挑战。
当前主流的汽车仪表是位于5寸到10寸的彩色屏幕,这些仪表采用的一般是支持一定图形引擎库的嵌入式软件方案,这些图形引擎库一般是芯片厂家自己研发的,只有简单的画点、线,显示图片、文字等简单的底层接口,更没有专用的图形化开发工具进行可视化的HMI软件开发。针对上述提及的对汽车仪表HMI软件的种种挑战,只能通过效率低下的人工编码去一点点实现所有显示效果,这也导致了汽车仪表新产品开发缓慢、项目后期维护困难等问题。
当前汽车仪表HMI软件实现的缺点有以下几点:
1、由于有大量的显示元素需要实现,基本上每个显示元素都对应一个或多个的图片素材,而每个图片素材都需要转换成对应的软件代码资源文件,转换时要单独配置颜色格式、压缩算法、长宽尺寸、存储位置等属性,然后需要使用第三方转换工具将图片素材一个个的转为为对应的资源文件,再将资源文件放入到软件代码工程中,整个过程工作量巨大
2、实现多主题风格时,绝大部分的显示元素在不同的主题风格下都要切换成对应主题风格的图片,这意味着每一处显示元素软件代码实现的地方都要添加适配不同主题风格显示的代码,这样每增加一个主题,对于这部分的软件代码实现都要全部修改一遍
3、HMI软件每增加一个界面,都要编写对应的界面属性配置、按键事件响应函数、界面进入退出函数、初始化反初始化函数、数据源更新函数等相关代码,费时费力。
发明内容
本发明要解决的技术问题有三:1、解决HMI软件图片素材过多,需要手动一个个转化为资源文件的问题;2、解决实现多主题时,要对每个主题进行代码适配的问题;3、解决新增界面时,需要手动编写太多代码的问题。为此,本发明提供一种基于VBA的汽车仪表人机交互软件设计方法。
本发明的技术方案具体为:
一种基于VBA的汽车仪表人机交互软件设计方法,包括如下步骤:
步骤1:加载图片;
步骤2:将加载后的图片扫描至图片素材目录下;
步骤3:配置图片素材的属性:每个图片素材按照多个属性进行自动配置;属性包括该图片素材的名字、图素转为资源文件的格式、图素压缩算法和图素对应的资源文件存储位置;
步骤4:将图片按照配置的属性转换成代码与资源文件:全部属性填写完毕后,VBA将每个图素按照其配置的属性,生成调用第三方图片素材转换工具的bat命令,将所有图素的bat命令写入到一个bat脚本中,最后调用bat脚本执行,实现将所有图素转化为符合要求的资源文件。
步骤2还包括如下步骤:在图片素材目录下,根据图片素材的使用界面或功能再划分到不同的子文件夹,在VBA中,利用文件读取功能,扫描该图片素材目录下的所有图片素材所对应的格式文件,并将名字与路径显示到excel中。
还包括步骤5、生成资源文件后,将当前的所有图素属性配置存储下来,后续如果新增图素时,导入所有图素时只会将新增图素的属性配置为默认值,其他图素使用存储的值,使用者也只需要配置新增的图素属性即可。
实现多主题时,针对不同主题下同位置的兄弟图素,在步骤4中将图片素材转化成资源文件时,在其它主题的特定目录下搜索匹配是否有兄弟图素,如果有,按照相同的属性配置转化为资源文件,把名字添加主题标识后缀,然后生成匹配不同主题的相关代码。
本发明的有益效果为:本发明通过使用VBA工具,在excel中进行图素的导入,添加新界面名称等操作,然后通过VBA自动执行图素转化资源文件、多主题图片切换代码、新增界面的相关代码生成等操作,节省大量的人工编码时间,而且工具表现形式为excel,显示直观,不需要额外的环境。
附图说明
图1为本发明的整体流程图;
图2为本发明中加载兄弟图素的流程图;
图3为本发明中针对高度雷同函数的加载流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要理解的是,术语“上”、“下”、“前”、“后”、“左”、“右”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
一种基于VBA的汽车仪表人机交互软件设计方法,包括如下步骤:
步骤1:加载图片,图片格式可以为PNG或者JPG,本发明以PNG格式为例加以说明。
步骤2:将加载后的图片扫描至图片素材目录下;在该图片素材目录下可以根据图片素材的使用界面或功能再划分到不同的子文件夹,在VBA中,利用文件读取功能,扫描该图片素材目录下的所有PNG格式文件,并将名字与路径显示到excel中。
步骤3:配置图片素材的属性:每个图片素材都有多个属性可进行配置,如软件中引用该图素的名字、图素转为资源文件的格式(如R8G8B8A8)、图素压缩算法、图素对应的资源文件存储位置等,这些属性会自动填充,如名字会根据图片名字添加固定的前缀,图片格式使用大多数图片使用的格式等。进一步地,如果自动填充的属性与实际使用不一致,可由使用者进行手动更改。
步骤4:将图片按照配置的属性转换成代码与资源文件:全部属性填写完毕后,VBA将每个图素按照其配置的属性,生成调用第三方图片素材转换工具的bat命令,将所有图素的bat命令写入到一个bat脚本中,最后调用bat脚本执行,实现将所有图素转化为符合要求的资源文件,并移动到软件工程中的对应目录下。
步骤5、生成后该工具会将当前的所有图素属性配置存储下来,后续如果新增图素时,导入所有图素时只会将新增图素的属性配置为默认值,其他图素使用存储的值,使用者也只需要配置新增的图素属性即可。
实现多主题时,大部分的图素在其它主题下会有一个兄弟图素,它们的大小、显示位置都相同,所以生成资源文件的配置也基本相同。将其它主题的图素放到对应的特定目录下,它们的名字与路径与其兄弟图素完全相同,然后在使用VBA工具导入图素时,导入时只显示第一套主题的图素,然后在步骤4中将图素转化成资源文件时,在其它主题的特定目录下搜索匹配是否有兄弟图素,如果有,按照相同的属性配置转化为资源文件,只是把名字添加主题标识后缀,然后生成匹配不同主题的相关代码。这样,我们在实现多主题时,软件编码时不需要实现多个主题代码,只实现一套主题的代码,然后添加多套主题的图素即可。
HMI软件中每个界面都有对应的界面属性配置、按键事件响应函数、界面进入退出函数、初始化反初始化函数、数据源更新函数等相关代码,这些代码在不同界面中高度雷同,可能只有名字不同。所以在excle工具中配置新增界面的名字,然后使用VBA生成这个新增界面的上述所有代码,而且这些代码是直接生成在软件工程中的相应文件中的,生成后可以直接进行编译使用。
本发明的工作原理是:
本发明提供了一种通过使用VBA工具,辅助汽车仪表HMI软件设计的一系列方法,通过使用VBA工具,在excel中配置图片素材的RGB格式、压缩算法、软件名、存储位置等属性,然后将图片素材批量转化成配置属性的软件资源文件与相关代码;
通过使用VBA工具,将多主题下同位置的兄弟图素配置成相同的属性,只把软件名添加不同的后缀,并生成主题切换时统一更换图素的相关代码,实现多主题效果的快速实现
通过使用VBA工具,在excle中配置各界面的名字、层级关系等属性,然后生成所有界面的属性配置、按键事件响应函数、界面进入退出函数、初始化反初始化函数、数据源更新函数等相关代码,实现软件界面设计的快速实现。
以上所述的仅是本发明的优选实施方式,应当指出,对于本领域的技术人员来说,在不脱离本发明整体构思前提下,还可以作出若干改变和改进,这些也应该视为本发明的保护范围。
Claims (4)
1.一种基于VBA的汽车仪表人机交互软件设计方法,其特征在于,包括如下步骤:
步骤1:加载图片;
步骤2:将加载后的图片扫描至图片素材目录下;
步骤3:配置图片素材的属性:每个图片素材按照多个属性进行自动配置;属性包括该图片素材的名字、图素转为资源文件的格式、图素压缩算法和图素对应的资源文件存储位置;
步骤4:将图片按照配置的属性转换成代码与资源文件:全部属性填写完毕后,VBA将每个图素按照其配置的属性,生成调用第三方图片素材转换工具的bat命令,将所有图素的bat命令写入到一个bat脚本中,最后调用bat脚本执行,实现将所有图素转化为符合要求的资源文件。
2.根据权利要求1所述的一种基于VBA的汽车仪表人机交互软件设计方法,其特征在于:步骤2还包括如下步骤:在图片素材目录下,根据图片素材的使用界面或功能再划分到不同的子文件夹,在VBA中,利用文件读取功能,扫描该图片素材目录下的所有图片素材所对应的格式文件,并将名字与路径显示到excel中。
3.根据权利要求1所述的一种基于VBA的汽车仪表人机交互软件设计方法,其特征在于:还包括步骤5、生成资源文件后,将当前的所有图素属性配置存储下来,后续如果新增图素时,导入所有图素时只会将新增图素的属性配置为默认值,其他图素使用存储的值,使用者也只需要配置新增的图素属性即可。
4.根据权利要求1所述的一种基于VBA的汽车仪表人机交互软件设计方法,其特征在于:实现多主题时,针对不同主题下同位置的兄弟图素,在步骤4中将图片素材转化成资源文件时,在其它主题的特定目录下搜索匹配是否有兄弟图素,如果有,按照相同的属性配置转化为资源文件,把名字添加主题标识后缀,然后生成匹配不同主题的相关代码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211706598.7A CN116149652A (zh) | 2022-12-29 | 2022-12-29 | 一种基于vba的汽车仪表人机交互软件设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211706598.7A CN116149652A (zh) | 2022-12-29 | 2022-12-29 | 一种基于vba的汽车仪表人机交互软件设计方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116149652A true CN116149652A (zh) | 2023-05-23 |
Family
ID=86361194
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211706598.7A Pending CN116149652A (zh) | 2022-12-29 | 2022-12-29 | 一种基于vba的汽车仪表人机交互软件设计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116149652A (zh) |
-
2022
- 2022-12-29 CN CN202211706598.7A patent/CN116149652A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7565611B2 (en) | Binary cache file format for themeing the visual appearance of a computer system | |
US4723209A (en) | Flow attribute for text objects | |
US5062060A (en) | Computer human interface comprising user-adjustable window for displaying or printing information | |
US20030184552A1 (en) | Apparatus and method for graphics display system for markup languages | |
US4939670A (en) | PC driven print file utilities for mainframe computer printing | |
US20050216834A1 (en) | Method, apparatus, and computer-readable medium for dynamically rendering a user interface menu | |
CN105094832A (zh) | 一种所见即所得的动态生成用户界面的方法和系统 | |
KR20030070685A (ko) | 그래픽 사용자 인터페이스의 변경 방법 및 이를 위한기록매체 | |
JPS6262389A (ja) | 表示スクリ−ン生成方法 | |
JPH0721754B2 (ja) | グラフィカル・ユーザ・インターフェース | |
US20010017622A1 (en) | Apparatus and method for generating a configurable program explanation using templates and transparent graphical user interfaces | |
CN110297636A (zh) | 一种基于页面配置文件的页面自动生成和参数管理方法、系统和装置 | |
CN109375962A (zh) | 基于嵌入式操作系统的汉字字符混合输出显示的实现方法 | |
CN112394928A (zh) | 一种嵌入式系统中多级菜单构建方法与计算机存储介质 | |
CN116149652A (zh) | 一种基于vba的汽车仪表人机交互软件设计方法 | |
US20020146181A1 (en) | System, method and computer program product for a multi-lingual text engine | |
CN100405293C (zh) | 点阵图形界面开发方法 | |
CN114237795A (zh) | 终端界面显示方法、装置、电子设备及可读存储介质 | |
JPH0619655A (ja) | オブジェクト指向ソフトウェアプログラムにおいてコンピュータのビデオディスプレイにマルチエントリのデータフィールドを表示する方法 | |
CN1567296A (zh) | 一种嵌入式系统的多语言显示方法 | |
JPH0883172A (ja) | ソフトウェア開発支援装置 | |
JPH0376491B2 (zh) | ||
KR20070001765A (ko) | 메모리 절약형 문자 표시 시스템 및 그 표시 방법 | |
CN115756468A (zh) | 基于qt图形框架的复合标绘图符设计软件 | |
KR20040068807A (ko) | 소프트키보드를 이용한 데이터 입력장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |