CN110297634A - 基于webkit内核的应用程序展示方法 - Google Patents
基于webkit内核的应用程序展示方法 Download PDFInfo
- Publication number
- CN110297634A CN110297634A CN201810242511.2A CN201810242511A CN110297634A CN 110297634 A CN110297634 A CN 110297634A CN 201810242511 A CN201810242511 A CN 201810242511A CN 110297634 A CN110297634 A CN 110297634A
- Authority
- CN
- China
- Prior art keywords
- webkit
- child window
- window
- kernel
- application
- 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
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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
一种基于webkit内核的应用程序展示方法,包括如下步骤:a)应用程序启动主进程的同时调用程序入口函数WinMain后启动程序界面外壳进程;b)主进程创建一个webkit对象;c)启动一个子进程并创建应用程序子窗口;d)主进程通过参数启动webkit展示进程;e)webkit展示进程加载本地网页文件并渲染到子窗口中上。由原来加载dullib库,转为加载webkit内核,之后加载网页文件,从而创建窗口。与现有方式相比,界面美观度更容易实现,每次编译只需编译桌面应用程序文件,网页文件无需编译,可实现如网页颜色抓取,渐变动画等功能,加速开发进度。
Description
技术领域
本发明涉及程序窗口化显示领域,具体涉及一种基于webkit内核的应用程序展示方法。
背景技术
目前,使用***API函数可以创建桌面应用程序界面,但是实现难度大,界面丑陋,不易维护。在现有技术中,也可以通过DuiLib库来实现界面的美化,但是两种现有技术都是通过***API函数来绘制界面。这两种方式根本都是通过调用***的API来实现。这两种方法有如下缺点不易维护,每次生成应用程序都需要重新打包编译,有一些功能不能实现,比如颜色的抓取,渐变的动画等。
发明内容
本发明为了克服以上技术的不足,提供了一种程序启动时,先加载webkit内核再加载网页文件的基于webkit内核的应用程序展示方法。
本发明克服其技术问题所采用的技术方案是:
一种基于webkit内核的应用程序展示方法,包括如下步骤:
a)当windows桌面应用程序开始运行时,应用程序启动主进程的同时调用程序入口函数WinMain后启动程序界面外壳进程;
b)主进程创建一个webkit对象;
c)将webkit对象启动一个子进程并创建应用程序子窗口,在子窗口中显示webkit控件;
d) 主进程通过参数启动webkit展示进程,webkit展示进程与子窗口之间通过发送异步任务的CefPostTask接口调整webkit控件大小使之与子窗口位置相吻合;
e) webkit展示进程加载本地网页文件并渲染到子窗口中上。
进一步的,步骤b)中通过API函数CreateWindowEx创建外层父窗口承载webkit对象。
进一步的,步骤c)中通过设置子窗口的WS_CHILD和WS_CLIPCHILDREN属性以在子窗口中显示webkit控件。
进一步的,步骤e)中的本地网页文件为JavaScript脚本和/或Css层叠样式表和/或html文本。
本发明的有益效果是:通过基于webkit内核的应用程序展示方法将JS、CSS、HTML文件与桌面应用程序相结合的方式,在程序启动的时候,由原来加载dullib库,转为加载webkit内核,之后加载网页文件,从而创建窗口。与现有方式相比,界面美观度更容易实现,每次编译只需编译桌面应用程序文件,网页文件无需编译,可实现如网页颜色抓取,渐变动画等功能,加速开发进度。
具体实施方式
下面对本发明做进一步说明。
一种基于webkit内核的应用程序展示方法,包括如下步骤:
a)当windows桌面应用程序开始运行时,应用程序启动主进程的同时调用程序入口函数WinMain后启动程序界面外壳进程;
b)主进程创建一个webkit对象;
c)将webkit对象启动一个子进程并创建应用程序子窗口,在子窗口中显示webkit控件;
d) 主进程通过参数启动webkit展示进程,webkit展示进程与子窗口之间通过发送异步任务的CefPostTask接口调整webkit控件大小使之与子窗口位置相吻合;
e) webkit展示进程加载本地网页文件并渲染到子窗口中上。
通过上述基于webkit内核的应用程序展示方法将JS、CSS、HTML文件与桌面应用程序相结合的方式,在程序启动的时候,由原来加载dullib库,转为加载webkit内核,之后加载网页文件,从而创建窗口。与现有方式相比,界面美观度更容易实现,每次编译只需编译桌面应用程序文件,网页文件无需编译,可实现如网页颜色抓取,渐变动画等功能,加速开发进度。例如某产品桌面应用程序需要使用html+css的方式来展示应用的主窗口,当用户点击界面上的某一张图片时,图片会以动画的效果进行放大,同时铺满整个屏幕,再次点击图片,会以动画的效果缩回原始位置。这种方式使用最新的网页技术和层叠样式表的技术,包含但不限于动画、放大镜效果、颜色选择等功能。但传统的通过***API的方式无法实现这种效果或者实现的效果体验不佳。
进一步的,步骤b)中通过API函数CreateWindowEx创建外层父窗口承载webkit对象。
进一步的,步骤c)中通过设置子窗口的WS_CHILD和WS_CLIPCHILDREN属性以在子窗口中显示webkit控件。
进一步的,步骤e)中的本地网页文件为JavaScript脚本和/或Css层叠样式表和/或html文本。
下面通过应用程序窗口展示图片为例对本发明作进一步说明:
1.当应用程序开始运行后,应用程序启动主进程的同时调用程序入口函数WinMain后启动程序界面外壳进程;
2.通过API函数CreateWindowEx对主程序创建外层父窗口;
3.启动一个子进程并创建应用程序子窗口,并设置 WS_CHILD 和 WS_CLIPCHILDREN属性,用来显示webkit控件;
4.主进程通过参数启动webkit展示进程,webkit展示进程与子窗口之间通过发送异步任务的CefPostTask接口调整webkit控件大小使之与子窗口位置相吻合;
webkit展示进程加载本地网页文件并渲染到子窗口中上,在HTML文本中,通过img标签的src属性以绝对路径来链接到本地的一张图片,然后再通过CSS样式表对img标签的宽和高等属性进行设置,JavaScript脚本控制图片在屏幕中的显示位置以及动画效果,从而完美的展示到应用程序窗口中。
Claims (4)
1.一种基于webkit内核的应用程序展示方法,其特征在于,包括如下步骤:
a)当windows桌面应用程序开始运行时,应用程序启动主进程的同时调用程序入口函数WinMain后启动程序界面外壳进程;
b)主进程创建一个webkit对象;
c)将webkit对象启动一个子进程并创建应用程序子窗口,在子窗口中显示webkit控件;
d) 主进程通过参数启动webkit展示进程,webkit展示进程与子窗口之间通过发送异步任务的CefPostTask接口调整webkit控件大小使之与子窗口位置相吻合;
e) webkit展示进程加载本地网页文件并渲染到子窗口中上。
2.根据权利要求1所述的基于webkit内核的应用程序展示方法,其特征在于:步骤b)中通过API函数CreateWindowEx创建外层父窗口承载webkit对象。
3.根据权利要求1所述的基于webkit内核的应用程序展示方法,其特征在于:步骤c)中通过设置子窗口的WS_CHILD和WS_CLIPCHILDREN属性以在子窗口中显示webkit控件。
4.根据权利要求1所述的基于webkit内核的应用程序展示方法,其特征在于:步骤e)中的本地网页文件为JavaScript脚本和/或Css层叠样式表和/或html文本。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810242511.2A CN110297634A (zh) | 2018-03-23 | 2018-03-23 | 基于webkit内核的应用程序展示方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810242511.2A CN110297634A (zh) | 2018-03-23 | 2018-03-23 | 基于webkit内核的应用程序展示方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110297634A true CN110297634A (zh) | 2019-10-01 |
Family
ID=68025738
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810242511.2A Pending CN110297634A (zh) | 2018-03-23 | 2018-03-23 | 基于webkit内核的应用程序展示方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110297634A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101951405A (zh) * | 2010-09-17 | 2011-01-19 | 中山大学 | 一种基于webkit的机顶盒中间件的实现方法 |
CN102681850A (zh) * | 2012-05-07 | 2012-09-19 | 奇智软件(北京)有限公司 | 一种基于Webkit 内核提供网页浏览的方法及装置 |
CN103345405A (zh) * | 2013-06-09 | 2013-10-09 | 贝壳网际(北京)安全技术有限公司 | 应用程序的启动方法、装置和客户端 |
CN103365546A (zh) * | 2013-08-08 | 2013-10-23 | 贝壳网际(北京)安全技术有限公司 | 浏览器窗口创建方法及装置 |
CN105094804A (zh) * | 2015-06-18 | 2015-11-25 | 北京奇虎科技有限公司 | 在页面中添加动画的方法和装置 |
CN106101836A (zh) * | 2016-07-07 | 2016-11-09 | 深圳创维-Rgb电子有限公司 | 智能电视的播放方法及装置 |
CN106897056A (zh) * | 2017-01-11 | 2017-06-27 | 山东华软金盾软件股份有限公司 | 一种实现窗口大小位置自动调整的方法 |
-
2018
- 2018-03-23 CN CN201810242511.2A patent/CN110297634A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101951405A (zh) * | 2010-09-17 | 2011-01-19 | 中山大学 | 一种基于webkit的机顶盒中间件的实现方法 |
CN102681850A (zh) * | 2012-05-07 | 2012-09-19 | 奇智软件(北京)有限公司 | 一种基于Webkit 内核提供网页浏览的方法及装置 |
CN103345405A (zh) * | 2013-06-09 | 2013-10-09 | 贝壳网际(北京)安全技术有限公司 | 应用程序的启动方法、装置和客户端 |
CN103365546A (zh) * | 2013-08-08 | 2013-10-23 | 贝壳网际(北京)安全技术有限公司 | 浏览器窗口创建方法及装置 |
CN105094804A (zh) * | 2015-06-18 | 2015-11-25 | 北京奇虎科技有限公司 | 在页面中添加动画的方法和装置 |
CN106101836A (zh) * | 2016-07-07 | 2016-11-09 | 深圳创维-Rgb电子有限公司 | 智能电视的播放方法及装置 |
CN106897056A (zh) * | 2017-01-11 | 2017-06-27 | 山东华软金盾软件股份有限公司 | 一种实现窗口大小位置自动调整的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101201274B1 (ko) | 그래픽 사용자 인터페이스에서 스크랩된 웹 페이지들을 제공하는 방법 및 장치 | |
US10216388B2 (en) | Graphical user interface window spacing mechanisms | |
US9971749B2 (en) | Editor for website and website menu | |
US9645733B2 (en) | Mechanism for switching between document viewing windows | |
CN105094804B (zh) | 在页面中添加动画的方法和装置 | |
US9612715B2 (en) | Real-time preview of uniform resource identifier addressable dynamic content | |
TWI588732B (zh) | 用於經由瓦來呈現應用程式的變化的計算裝置及電腦實施方法 | |
US20160041744A1 (en) | Intelligent window sizing and control | |
US20090100329A1 (en) | Method of Deploying a Web Widget In a Desktop Widget Platform | |
US9053199B2 (en) | Uniquely identifying script files by appending a unique identifier to a URL | |
US20160170947A1 (en) | Efficient delivery of content by virtualization of dynamic interaction with the document object model | |
WO2008085799A1 (en) | Selecting and manipulating web content | |
WO2015094779A1 (en) | Touch-based reorganization of page element | |
JPH076015A (ja) | 大きさを調整できるウインドウエレメント | |
CN104636120A (zh) | 一种浏览器的多窗口显示方法及装置 | |
US9679075B1 (en) | Efficient delivery of animated image files | |
WO2016070748A1 (zh) | 混合型客户端界面实现方法及其*** | |
CN102609414A (zh) | 一种基于浏览器的图片热区突出显示方法、装置及*** | |
CN110262749B (zh) | 一种网页操作方法、装置、容器、设备及介质 | |
Jiang et al. | ReverseORC: Reverse engineering of resizable user interface layouts with or-constraints | |
CN114780077A (zh) | 网页可视化编辑的装置及方法 | |
CN110297634A (zh) | 基于webkit内核的应用程序展示方法 | |
CN112507257A (zh) | 一种网页显示方法、装置、设备以及存储介质 | |
CN107193952A (zh) | 基于多线程优化HTML5的Canvas性能的方法 | |
US8112717B1 (en) | Automatic formatting of display screen to reflect past correlative changes to data display windows |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191001 |
|
RJ01 | Rejection of invention patent application after publication |