纯JAVA浏览器的源码说明,用java语言编写的浏览器实例。总算把源码整理好了,放给有需要的朋友,特别是还在做传统Web应用的朋友,希望能帮你们解决一些问题。对我来说也是一个收获。
几点说明
- 所有代码为本人在家中产出,不存在版权问题,大家可以放心使用。
- 本例为学习性质DEMO。
- JAVAFX可用可不用,抱着学习的态度,在皮肤选择面板我用JAVAFX实现了阴影特效
- IE核心我并没有集成进去,在《超漂亮的纯JAVA浏览器》一文中有提及DJNativeSwing可以满足。
- 浏览器中打开新窗口会使用MozliaSwing的UI,因为我没处理(DEMO嘛)。
- 默认使用“微软雅黑”,如果您不是win7系统需要修改字体。在skin/皮肤/*.xml中进行修改。
- 如果有朋友可办法实现窗体阴影麻烦告诉我一下哦 ,谢谢啦。
- 没分数下载的朋友再给我留言吧。
源码结构
- com.webclient – 主函数入口
- com.webclient.base – 实现背景图和圆角边框面板
- com.webclient.components – 窗体元素或组件
- com.webclient.swingext – 扩展Swing UI资源
- org.mozila.browser.* – MozSwing的源码,我直接考进来方便查阅,要扩展浏览器您可能需要修改 WebPanel,其实现的IMozillaWindow接口定义了完整的浏览器功能。
- org.mozila.browser.examples - MozSwing 的示例集,很好玩的,你会发现这个浏览器核心能做的事很多。事实上HTML5也是支持的。
构建方式
- 采用Maven构建,考虑到还有部分没使用过Maven的朋友,已将所依赖的JAR放在lib目录下。
- 需要注意的是 MozSwing浏览器核心在target目录下,也就是说native目录必须在你的类文件编译目录的上一层级。
- MozSwing本身支持 linux、苹果等环境,但由于包太大了,所以我已将native中的其它环境删除,只留下win32。(MozSwing下载地址参考http://blog.csdn.net/lxf9601/article/details/6967167)
- 同时我也提供了javafx2.0运行环境,直接引用jar就可以了。bin目录必须在javafx.jar上一层目录,切记。
- maven的pom.xml所定义依赖大多数不在中央仓库,如果你习惯Maven构建,请将附件jar安装至您的本地仓库。
关于皮肤
- 按照已有的皮肤目录结构将资源放到 src/main/resources/skin下,并在system-config.xml增加皮肤配置信息。
- 皮肤由一个定义xml文件加images目录构成。
- xml文件为swing的SynthLookAndFeel皮肤文件,这是swing的空白皮肤(具体的可以上网详查),对于想增加个地址栏或按钮什么的,您可能需要在xml定义这些元素的Style。
其它
system-config.xml里的配置项可以自由扩展。
下载地址
http://download.csdn.net/detail/lxf9601/3808104
又增加了几个好看的皮肤在里面,呵呵。换成360一样好看。