CN111414209B - 一种可定制的web计算器插件 - Google Patents

一种可定制的web计算器插件 Download PDF

Info

Publication number
CN111414209B
CN111414209B CN202010185905.6A CN202010185905A CN111414209B CN 111414209 B CN111414209 B CN 111414209B CN 202010185905 A CN202010185905 A CN 202010185905A CN 111414209 B CN111414209 B CN 111414209B
Authority
CN
China
Prior art keywords
interface
plug
computing
calculation
input
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.)
Active
Application number
CN202010185905.6A
Other languages
English (en)
Other versions
CN111414209A (zh
Inventor
戴学升
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur General Software Co Ltd
Original Assignee
Inspur General Software Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Inspur General Software Co Ltd filed Critical Inspur General Software Co Ltd
Priority to CN202010185905.6A priority Critical patent/CN111414209B/zh
Publication of CN111414209A publication Critical patent/CN111414209A/zh
Application granted granted Critical
Publication of CN111414209B publication Critical patent/CN111414209B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Input From Keyboards Or The Like (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明公开了一种可定制的web计算器插件,属于计算器插件领域,要解决的技术问题为如何快捷的为用户提供计算器辅助录入工具。其结构包括:界面配置接口,用于添加界面元素;监听接口,用于监听录入事件,并在呼出状态下监听粘贴事件,并用于回写计算结果;计算栈接口,用于根据功能按钮添加并配置计算单元,用于对事件输入进行计算生成计算结果;输入容错接口,用于判断事件输入是否可用于合法计算;输入管理接口,用于将可用于合法计算的事件输入计算栈接口,并将计算结果回写事件监听接口;显示处理接口,用于对事件输入计算过程进行实时显示;插件触发接口,用于定义web计算器插件的呼出和销毁。

Description

一种可定制的web计算器插件
技术领域
本发明涉及计算器插件领域,具体地说是一种可定制的web计算器插件。
背景技术
诸多商业Web控件如基于Jquery的EasyUI,基于Augular的KendoUI均未提供原生的计算器输入插件,而对于数据录入密集的Web产品表单页面,尤其财务领域,需求强烈。
基于上述如何快捷的为用户提供计算器辅助录入工具,是需要解决的技术问题。
发明内容
本发明的技术任务是针对以上不足,提供一种可定制的web计算器插件,来解决如何快捷的为用户提供计算器辅助录入工具的问题。
本发明提供一种可定制的web计算器插件,包括:
界面配置接口,用于添加界面元素,并根据插件的配置完成计算器插件界面html的构建,界面元素包括但不限于功能按钮、文本框和界面展示布局;
监听接口,用于监听录入事件,并在呼出状态下监听粘贴事件,并用于回写计算结果,所述录入事件包括键盘按键录入和鼠标点击录入;
计算栈接口,用于根据功能按钮添加并配置计算单元,每个计算单元配合对应的功能按钮,用于对事件输入进行计算生成计算结果;
输入容错接口,用于判断事件输入是否可用于合法计算;
输入管理接口,用于接收事件输入并调用输入容错接口判断事件输入是否可用于合法计算,用于将可用于合法计算的事件输入计算栈接口,并将计算结果回写事件监听接口;
显示处理接口,用于对事件输入计算过程进行实时显示,在将计算结果写回宿主编辑器后清空计算过程;
插件触发接口,用于定义所述web计算器插件的呼出和销毁。
在上述实施方式中,界面配置接口与计算栈接口配合,实现了web计算器插件的可配置性,即可根据计算需求添加或删除计算器的计算功能。
作为优选,所述界面配置接口与插件触发接口配合,将所述web计算器插件在表单页面固定位置呼出和销毁;
或,
所述界面配置接口与插件触发接口配合,不指定位置的将所述web计算器插件呼出,并根据宿主编辑器的位置,调整所述web计算器插件在表单页面上的位置。
作为优选,所述监听接口用于监听录入事件,并在运行时将录入事件与功能按钮或文本框进行绑定;
用于对呼出之前宿主编辑器录入内容进行解析、对呼出之后粘贴事件进行响应,并用于识别计算结果,将计算结果回写宿主编辑器。
作为优选,所述界面展示布局包括但不限于功能按钮以及文本框的大小尺寸、前景色、背景色。
作为优选,所述事件输入包括但不限于数字、运算符和算式。
作为优选,计算栈接口包括:
计算单元,共多个,每个计算单元配置有与其对应的计算函数;
新建单元,用于创建计算单元;
判断单元,配置有多个判断函数,用于根据判断函数判断计算单元是否处理某一特定事件输入,每个计算单元均配置有对应判断函数;
单元管理接口,用于根据事件输入捕获计算单元,对于捕获的计算单元,判断单元根据判断函数判断所述计算单元是否处理某一特定事件输入后,将事件输入分发至对应的计算单元;
初始化单元,用于初始化所有计算单元。
作为优选,所述计算单元为数字计算计算单元、运算符计算单元、单目运算符计算单元和M操作符计算单元。
作为优选,所述计算单元为基于MVC模式的模块化计算单元。
作为优选,所述显示处理接口用于保存每次计算过程;所述功能按钮支持通过上下键的方式查找历史完整计算过程。
本发明的一种可定制的web计算器插件具有以下优点:
1、基于界面配置接口和计算栈接口,计算器界面元素以及计算单元均可配置,即计算器可根据需求进行配置,为实时计算需求的表单页面提供了一个开箱即用的计算器辅助工具,用户可以借此提高录入效率,开发者也可以快速构建代码完成需求;
2、插件触发接口与界面配置接口配合,在使用时,web计算器插件在表单页面固定位置,或者不指定位置,便于随着宿主编辑器的使用调节web计算器插件在表单页面的位置;
3、该计算器插件支持计算过程的历史查找。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
下面结合附图对本发明进一步说明。
附图1为一种可定制的web计算器插件的界面结构示意图;
附图2为一种可定制的web计算器插件计算过程的流程框图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互结合。
需要理解的是,在本发明实施例的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。在本发明实施例中的“多个”,是指两个或两个以上。
本发明实施例中的属于“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,单独存在B,同时存在A和B这三种情况。另外,本文中字符“/”一般表示前后关联对象是一种“或”关系。
本发明实施例提供一种可定制的web计算器插件,用于解决如何快捷的为用户提供计算器辅助录入工具的技术问题。
实施例:
本发明的一种可定制的web计算器插件,包括界面配置接口、监听接口、计算栈接口、输入容错接口、输入管理接口、显示处理接口以及插件触发接口,界面配置接口用于添加界面元素,并根据插件的配置完成计算器插件界面html的构建,界面元素包括但不限于功能按钮、文本框和界面展示布局;监听接口用于监听录入事件,并在呼出状态下监听粘贴事件,并用于回写计算结果,所述录入事件包括键盘按键录入和鼠标点击录入;计算栈接口用于根据功能按钮添加并配置计算单元,每个计算单元配合对应的功能按钮,用于对事件输入进行计算生成计算结果;输入容错接口用于判断事件输入是否可用于合法计算;输入管理接口用于接收事件输入并调用输入容错接口判断事件输入是否可用于合法计算,用于将可用于合法计算的事件输入计算栈接口,并将计算结果回写事件监听接口;显示处理接口用于对事件输入计算过程进行实时显示,在将计算结果写回宿主编辑器后清空计算过程;插件触发接口用于定义所述web计算器插件的呼出和销毁。
其中,界面配置接口与插件触发接口配合,不指定位置的将所述web计算器插件呼出,并根据宿主编辑器的位置,调整所述web计算器插件在表单页面上的位置。
作为改进,如果计算器插件在表单页面的位置需要固定,也可同通过界面配置接口与插件触发接口配合,计算器插件在表单页面固定位置呼出和销毁。
本实施例中,界面配置接口接收需要配置的功能按钮和界面展示布局,在运行时构建计算器插件的界面。该界面配置接口的定义如下:
Figure BDA0002414166360000041
Figure BDA0002414166360000051
监听接口用于监听录入事件,并在运行时将录入事件与功能按钮或文本框进行绑定;并用于对呼出之前宿主编辑器录入内容进行解析、对呼出之后粘贴事件进行响应,并用于识别计算结果,将计算结果回写宿主编辑器。
本实施例中,该监听接口包括CalItemAddEventListener和EablePas-teExp,具体定义如下:
Figure BDA0002414166360000052
本实施例中监听接口监听的鼠标事件和键盘事件如表1所示:
表1、默认监听的鼠标和键盘事件
Figure BDA0002414166360000061
计算栈接口进行执行计算过程、产生计算结果并保存计算过程和计算结果。具体包括计算单元、新建单元、判断单元、计算管理单元和初始化单元。计算单元共多个,每个计算单元配置有与其对应的计算函数;新建单元用于创建计算单元,判断单元配置有多个判断函数,用于根据判断函数判断计算单元是否处理某一特定事件输入,每个计算单元均配置有对应判断函数;计算管理单元用于根据事件输入捕获计算单元,对于捕获的计算单元,判断单元根据判断函数判断所述计算单元是否处理某一特定事件输入后,将事件输入分发至对应的计算单元;初始化单元,用于初始化所有计算单元。
本实施例中,计算栈接口定义如下:
Figure BDA0002414166360000062
Figure BDA0002414166360000071
其中,数字计算计算单元digi、运算符计算单元op、单目运算符计算单元sop、M操作符计算单元mop等。上述配置的计算单元为基于MVC模式的模块化计算单元。
当输入容错接口判断得到事件输入在当前计算过程中不合法时,忽略该事件输入。本实施例中输入容错接口(IsValidCalInpu)定义如下:
Figure BDA0002414166360000081
显示处理接口(ExpressDisplay)定义如下:
Figure BDA0002414166360000082
插件触发接口定义插件的呼出和销毁快捷键。作为模块化、低耦合、无侵入的插件,其生命周期从呼出开始,到销毁结束。为了保证兼容性,不破坏原有界面,最好的方式就是快捷键启动和终止。
本实施例中插件触发接口配置的快捷键如下:
Figure BDA0002414166360000083
本发明的一种可定制的web计算器插件,辅助表单页面的宿主编辑器。工方式为:
(1)首先,根据GS7的设计和用户反馈需求,确定需要的计算类型有:
(a)加减乘除
(b)取余
(c)取百分数
(d)取平方根
(e)MC/MR/MS/M+
(f)Back/CE/C
在插件的界面配置接口中添加27个计算按钮,并通过接口CalFormSetOptions进行如下设置:
(a)数字[0-9],小数点[.],取反[+/-]设置大小w50,h30,前景色black,背景色white;
(b)[Back/CE/C]设置大小w80,h30,前景色black,背景色#EEEEEE;
(c)其余按钮设置大小w50,h30,前景色black,背景色#EEEEEE。
(2)通过接口CalItemAddEventListener默认监听23个按钮的鼠标点击事件;同时设置相应计算器按钮响应键盘和小键盘区域(如果存在)的[0-9][.][+-*/][%]按键的keydown事件和keyup事件;
(3)设置计算数据栈:
(a)当前计算结果;
(b)最后参与计算的数值;
(c)操作符;
(d)计算过程;
(e)M保存值。
(4)初始化默认计算单元:
(a)数字计算计算单元digit
(b)运算符计算单元op
(c)单目运算符计算单元sop
(d)M操作符计算单元mop
(5)通过GetCalUnitByInputEvent接口,统一管理计算器插件的按钮点击事件和监听的键盘事件,将事件转发至计算单元;
(6)通过IsValidCalInput接口实现输入容错,通过ExpressDisplay接口,实时计算更新计算栈,并同步更新计算器插件绑定的宿主编辑器。
(7)使用默认的计算器插件呼出和销毁快捷键。
本实施例的一种可定制的web计算器插件有效填补了EasyUI组件数值输入编辑器计算器功能的缺失,为用户录入前需要计算的场景提供了支持,提高的工作效率。
以上所述实施例仅是为充分说明本发明而所举的较佳的实施例,本发明的保护范围不限于此。本技术领域的技术人员在本发明基础上所作的等同替代或变换,均在本发明的保护范围之内。本发明的保护范围以权利要求书为准。

Claims (9)

1.一种可定制的web计算器插件,其特征在于包括:
界面配置接口,用于添加界面元素,并根据插件的配置完成计算器插件界面html的构建,界面元素包括但不限于功能按钮、文本框和界面展示布局;
监听接口,用于监听录入事件,并在呼出状态下监听粘贴事件,并用于回写计算结果,所述录入事件包括键盘按键录入和鼠标点击录入;
计算栈接口,用于根据功能按钮添加并配置计算单元,每个计算单元配合对应的功能按钮,用于对事件输入进行计算生成计算结果;
输入容错接口,用于判断事件输入是否可用于合法计算;
输入管理接口,用于接收事件输入并调用输入容错接口判断事件输入是否可用于合法计算,用于将可用于合法计算的事件输入计算栈接口,并将计算结果回写事件监听接口;
显示处理接口,用于对事件输入计算过程进行实时显示,在将计算结果写回宿主编辑器后清空计算过程;
插件触发接口,用于定义所述web计算器插件的呼出和销毁。
2.根据权利要求1所述的一种可定制的web计算器插件,其特征在于所述界面配置接口与插件触发接口配合,将所述web计算器插件在表单页面固定位置呼出和销毁;
或,
所述界面配置接口与插件触发接口配合,不指定位置的将所述web计算器插件呼出,并根据宿主编辑器的位置,调整所述web计算器插件在表单页面上的位置。
3.根据权利要求2所述的一种可定制的web计算器插件,其特征在于所述监听接口用于监听录入事件,并在运行时将录入事件与功能按钮或文本框进行绑定;
用于对呼出之前宿主编辑器录入内容进行解析、对呼出之后粘贴事件进行响应,并用于识别计算结果,将计算结果回写宿主编辑器。
4.根据权利要求1、2或3所述的一种可定制的web计算器插件,其特征在于所述界面展示布局包括但不限于功能按钮以及文本框的大小尺寸、前景色、背景色。
5.根据权利要求1、2或3所述的一种可定制的web计算器插件,其特征在于所述事件输入包括但不限于数字、运算符和算式。
6.根据权利要求1、2或3所述的一种可定制的web计算器插件,其特征在于计算栈接口包括:
计算单元,共多个,每个计算单元配置有与其对应的计算函数;
新建单元,用于创建计算单元;
判断单元,配置有多个判断函数,用于根据判断函数判断计算单元是否处理某一特定事件输入,每个计算单元均配置有对应判断函数;
计算管理单元,用于根据事件输入捕获计算单元,对于捕获的计算单元,判断单元根据判断函数判断所述计算单元是否处理某一特定事件输入后,将事件输入分发至对应的计算单元;
初始化单元,用于初始化所有计算单元。
7.根据权利要求6所述的一种可定制的web计算器插件,其特征在于所述计算单元为数字计算计算单元、运算符计算单元、单目运算符计算单元和M操作符计算单元。
8.根据权利要求6所述的一种可定制的web计算器插件,其特征在于所述计算单元为基于MVC模式的模块化计算单元。
9.根据权利要求1、2或3所述的一种可定制的web计算器插件,其特征在于所述显示处理接口用于保存每次计算过程;所述功能按钮支持通过上下键的方式查找历史完整计算过程。
CN202010185905.6A 2020-03-17 2020-03-17 一种可定制的web计算器插件 Active CN111414209B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010185905.6A CN111414209B (zh) 2020-03-17 2020-03-17 一种可定制的web计算器插件

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010185905.6A CN111414209B (zh) 2020-03-17 2020-03-17 一种可定制的web计算器插件

Publications (2)

Publication Number Publication Date
CN111414209A CN111414209A (zh) 2020-07-14
CN111414209B true CN111414209B (zh) 2023-05-09

Family

ID=71491209

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010185905.6A Active CN111414209B (zh) 2020-03-17 2020-03-17 一种可定制的web计算器插件

Country Status (1)

Country Link
CN (1) CN111414209B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102792679A (zh) * 2010-01-05 2012-11-21 联合视频制品公司 使用无线通信装置提供媒体引导应用功能的系统和方法
CN108268147A (zh) * 2018-02-14 2018-07-10 广东欧珀移动通信有限公司 基于输入法的计算处理方法、装置及设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190250968A1 (en) * 2015-05-26 2019-08-15 Alireza Bemanian Smart Multiple Display Calculator with Input Output Data Matrix

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102792679A (zh) * 2010-01-05 2012-11-21 联合视频制品公司 使用无线通信装置提供媒体引导应用功能的系统和方法
CN108268147A (zh) * 2018-02-14 2018-07-10 广东欧珀移动通信有限公司 基于输入法的计算处理方法、装置及设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王爱华 ; .基于闭包的web计算器研究与设计.信息技术与信息化.2018,(Z1),全文. *

Also Published As

Publication number Publication date
CN111414209A (zh) 2020-07-14

Similar Documents

Publication Publication Date Title
US20080301559A1 (en) User Interface That Uses a Task Respository
TW201812567A (zh) 顯示資料的控制方法、裝置和系統
CN111984115A (zh) 消息发送方法、装置和电子设备
CN108268147B (zh) 基于输入法的计算处理方法、装置及设备
US10380867B2 (en) Alert management within a network based virtual collaborative space
CN107408243A (zh) 提供用于管理对话中的附件的附件控件
CN113163050A (zh) 会话界面显示方法及装置
CN101105750A (zh) 一种数值输入装置及应用所述装置进行数值输入的方法
CN101369269A (zh) 符合客户端使用习惯的快捷工具栏显示方法
CN110990345A (zh) 一种Excel文件在线预览的方法及装置
CN110244885B (zh) 输入方法、装置、设备及存储介质
CN112286416A (zh) 信息显示方法、装置和电子设备
CN113515390A (zh) 页面间数据交互处理方法、装置、电子设备及存储介质
CN112929254B (zh) 消息处理方法、装置和电子设备
CN111414209B (zh) 一种可定制的web计算器插件
JP5803935B2 (ja) 可用性分析装置及び可用性分析方法
EP3975010A1 (en) Online collaborative document processing method and device
CN104160389B (zh) 通过具有非例示内容的智能事件动态地聚合内容的方法和系统
CN205680036U (zh) 一种可显示主板bmc ip地址的主板
CN112684963A (zh) 截图方法、装置及电子设备
CN104331214B (zh) 一种信息处理方法和电子设备
CN113867581B (zh) 内容编辑方法、装置及电子设备
CN112702258B (zh) 聊天消息的分享方法、装置和电子设备
CN113360060B (zh) 任务实现方法、装置和电子设备
CN106406662A (zh) 多开应用管理方法及系统

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
TA01 Transfer of patent application right

Effective date of registration: 20230413

Address after: No. 1036, Shandong high tech Zone wave road, Ji'nan, Shandong

Applicant after: Inspur Genersoft Co.,Ltd.

Address before: 250100 No. 2877 Kehang Road, Sun Village Town, Jinan High-tech District, Shandong Province

Applicant before: SHANDONG INSPUR GENESOFT INFORMATION TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant