一个多进程多Tab浏览器的构思及实现
来源:互联网 发布:27周胎儿发育标准数据 编辑:程序博客网 时间:2024/04/29 11:45
一个偶然的机会,开始了我的浏览器设计,这是设计后的结果。
如果你想找到我,就去菜单中的关于里面找。
说一说这个浏览器的设计吧,主要参照了3款浏览器,一个WTL自带的浏览器,还有两个都是咱们CSDN上的,其中一个是Raptor浏览器,这个借鉴了非常大,还有一个找不到了,非常感谢他们。
整个架构基本上就是ATL+WTL,采用多进程,主进程只是界面进程,子进程是浏览器进程,负责页面导航。
这样设计就有个难度,当你在一个页面中点击一个超链接,这个事件是在子进程中发生的,你要通知到主进程,主进程要先创建一个Tab页,在去创建
一整个子进程,这个新创建的浏览器子进程负责导航到新的页面。
这个浏览器还使用了异步可插协议实现新建标签页,使用双层窗口实现阴影边框,
实际上你看不到阴影边框,因为他的透明度是1,界面上我将谷歌浏览器的一些图片拿来使用。
所以界面上的一些按钮那是我画上去的,这样做你知道处理鼠标消息会有多难吗,我要计算好多的坐标。
实际上界面参照了金山界面库的实现方法,但是我并没有使用金山界面库,原因很简单,对于我来讲我只有Tab控件和Button需要重绘。
不必要为此引入一个界面库。
我的菜单也是自绘的,他实际上就是一个窗口里有一排的Button,这个想法真是酷毙了。
还有就是加速键的处理也有个难度,因为加速键是主进程处理的,所以当焦点在子进程中的时候,需要将鼠标和键盘消息全部转发到主进程。
这样主进程才会感知到减速键。
就说这么多吧,至于这个浏览器怎么样,你可以去这里下载http://download.csdn.net/detail/qq112358hai198771/9713696,自己体验。
- 一个多进程多Tab浏览器的构思及实现
- 一个简单项目的构思
- Android实现chrome浏览器的Tab样式
- 基于对话框的多标签多进程浏览器实现
- 安卓开发 :实现打开一次相机连续拍多张照片返回后拿到多张照片,一个小功能的构思
- 开始蓝牙构思的实现
- 浏览器的多进程结构
- 浏览器的多进程架构
- 在Android上实现多进程构架的浏览器(浏览器开发)的讨论
- 在浏览器的多个tab页中共享sessionStorage
- [构思]设计&实现一个执行Excel的Import&Export操作的类
- 一个实现Tab切换的容器扩展
- 实现一个简单的tab选项卡
- 一个简单的底部Tab切换实现
- 一个简单的单点登录构思
- 一个软件开发者的历史 构思
- MFC实现多TAB页的切换
- 关于论坛的构思及实践简述
- 转移说明符
- system调用和posix说明
- PHP回调函数
- LA 4119 Always an integer (数学)
- 使用Atmel Studio 7编程Arduino Due开发板
- 一个多进程多Tab浏览器的构思及实现
- uva 1591 Data Mining
- 判断语句实现截取图片
- 第十六周项目1(5)——归并排序
- 用原生js清除浮动的方法
- DevExpress中控件extraTabPage更改BackColor的方法
- maven中的一些常用概念
- Codeforces 742B-Arpa’s obvious problem and Mehrdad’s terrible solution
- 趣解Java的继承