用JDIC在java中嵌入本地浏览器

实现本地桌面集成的JDIC浏览器项目 本文还有配套的精品资源,点击获取 简介:JDIC(Java Desktop Integration Components)是一个开源项目,致力于将Java应用程序与本地桌面环境集成。项目支持将Internet Explorer浏览器控件集成到JavaFX或Swing框架中,同时提供了系统通知、剪贴板交互、桌面操作等集成功能,增强Java应用的原生体验和系统控制能力。开发者可... 阅读详情

以前也尝试过,不过都没有成功。今天又试了一次,终于成功了。

首先说明一下,在网上广为流传的例子是不能编译的。如果上网搜索  JDIC 浏览器 肯定能搜到这篇文章 http://azi.javaeye.com/blog/207182 不过这里的代码是不能用的。里面需要 org.jdesktop.jdic.browser.IWebBrowser 而如果你和我一样下载的是最新的0.9.5的话,那么把代码拷过去肯定是找不到类的。上网搜索一下,好像是说自从0.9以后,IWebBrowser 这个类就挪走了。具体弄哪去了,我也忘了,英文的网页,没仔细看,不小心关了,一时也搜不出来了。可见这个例子使用的应该是很早以前的JDIC。


下面说说怎么嵌入吧。其实非常简单。

   首先去 https://jdic.dev.java.net/ 下载最新的JDIC 0.9.5,好像是去年更新的,看来这个项目也没啥活力了呀。

   然后解压后,运行Browser.jar试试(怎么运行jar包?......)。不好使?运行startBrowser.cmd,一闪过去了?那是JAVA_HOME没配好,如果你的JAVA_HOME和我一样有空格必然C:/Program Files.... 那么还是修改一下startBrowser.cmd把%JAVA_HOME%用引号引起来吧-->"%JAVA_HOME%"。然后运行,如果出现

Can't execute the native embedded browser. Error message: CreateProcess: IeEmbed
.exe -port=1600 error=2

那么去 lib/windows/x86下把IeEmbed.exe考到和startBrowser.cmd一个地方吧,然后运行这个cmd文件应该就ok了。


在程序里嵌入:需要导入jdic.jar 另外还要把lib下的windows目录复制到河jdic.jar一个目录下

然后尝试这段代码吧:

这段代码是jdic的网站拷贝的,不过可能它在写的时候版本还不是最新的,所以少一个接口

public void statusTextChange(WebBrowserEvent event) {;} 呵呵,说明我们现在还可以监听状态栏文本变化这个事件了。

试试吧,good luck!嗯,还有就是把它默认的java.net的url改成baidu了,因为教育网上国外网站太慢了。



package test;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.net.URL;
import java.net.MalformedURLException;
import org.jdesktop.jdic.browser.*;

public class SimpleBrowser {
    public static void main(String[] args) {
        JFrame frame = new JFrame("JDIC API Demo - SimpleBrowser");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        WebBrowser webBrowser = new WebBrowser();

        //Use below code to check the status of the navigation process,
        //or register a listener for the notification events.
        webBrowser.addWebBrowserListener(
            new WebBrowserListener() {
            public void downloadStarted(WebBrowserEvent event) {;}
            public void downloadCompleted(WebBrowserEvent event) {;}
            public void downloadProgress(WebBrowserEvent event) {;}
            public void downloadError(WebBrowserEvent event) {;}
            public void documentCompleted(WebBrowserEvent event) {;}
            public void titleChange(WebBrowserEvent event) {;}
            public void statusTextChange(WebBrowserEvent event) {;}

            public void windowClose(WebBrowserEvent webBrowserEvent) {
            }
        });

        try {
            webBrowser.setURL(new URL("http://www.baidu.com"));
        } catch (MalformedURLException e) {
            System.out.println(e.getMessage());
            return;
        }

        JPanel panel = new JPanel();
        panel.setLayout(new BorderLayout());
        panel.setPreferredSize(new Dimension(700, 500));
        panel.add(webBrowser, BorderLayout.CENTER);

        frame.getContentPane().add(panel, BorderLayout.CENTER);
        frame.pack();
        frame.setVisible(true);
    }
}

JDIC IeEmbed组件:Java桌面集成中的Web浏览解决方案 Java Desktop Integration Components (JDIC)是一个功能强大的库,它允许Java程序与桌面环境之间实现紧密集成。这种集成能够提升用户体验,使得Java应用能够利用操作系统的原生功能,如同本地应用一样运行和显示。 阅读详情

相关推荐

Java 版浏览器(居于jdic制作)

用了jdic插件制作的一个浏览器,基本功能都实现了,界面挺好看的

java jdic_java中调用web浏览器类库之jdic的配置及简单运用 | 学步园

首先下载jdic的包,坛子里就有,推荐http://download.youkuaiyun.com/detail/woyeyouming/5069206将jdic.dll和tray.dll放在C:\windows\System32下面和java的bin文件下面,如C:\Program Files\Java\jre7\bin下将jar包放在project目录下,并导入项目,同时将ieEmbed.exe导入进去...

weixin_42613773的博客 501

java开发浏览器的jdic安装包

如果想用java开发浏览器,jdic是一个很好的选择,这是jdic的包

在java应用程序中嵌入浏览器

最近做一个缴费的项目,直接用浏览器做终端不安全,需要把浏览器嵌入到java application中,目的是为了不把浏览器中的工具栏,收藏夹,地址栏等去了,让用户不能刷新,关闭程序等。。。 方式一:用jdic开源组件,这种方式有个缺点,不支持firefox,如果把默认浏览器设为firefox就会出错具体代码如下:import java.awt.BorderLayout;im

岭南六少 4923

jdic.jar.zip

jdic目前提供了本机 Web 浏览器(Internet Explorer 或 Mozilla) 支持、系统托盘支持、文件扩展集成、应用程序启动与打印和其他桌面特性。

jdic-all.jar

java webbrower,JDIC开发用到的jdic-all.jar。JDIC 全程是 JDesktop Integration Components 目的是构建消除本机应用程序和 Java 等价物之间差距的组件。JDIC 单一的 Java API 允许应用程序接进本机操作系统特性,同时保持跨平台支持。

java jeditorpane 自动换行_JDIC 中利用WebBrowser内置浏览器到java application中 | 学步园...

JDIC简介:JDesktop Integration Components (JDIC),是一个开源的项目,目的是构建消除本机应用程序和 Java 等价物之间差距的组件。项目组长是个中国人。该项目是为了使用java建立桌面应用程序而建立的JDIC单一的 Java API 允许应用程序接进本机操作系统特性,同时保持跨平台支持。它目前提供了本机 Web浏览器(InternetExplorer 或 M...

weixin_32236671的博客 246

用java(jdic)做的浏览器

几个同学一起用jdic技术做的一个浏览器!高手可以给点评价!随便也可以给我解决 设置为默认浏览器的 问题!!!!!!

java jdic_JDIC插件的使用教程

JDIC插件的使用。我想JAVA应用现在远不及VC++,VB等等那么普及可能就是因为它的Web部分吧!虽然说JDIC项目解决了JAVA Application与本机Application之间的交互,但是对于它的可移植性却大打折扣。对于JAVA Swing来说,能显示网页并能对网页进行操作的只有JEditorPane,但是它也仅仅局限与非常简单的网页,像有JS的网页就不支持。无奈只好寻找其他的插件,...

weixin_29686935的博客 331

JAVA浏览器(基于JDIC)

JDIC实现 包括源码和jar文件(可执行文件在ext目录下。注意不要调整ext下的目录结构!否则会导致运行不成功)

用OpenPose进行单个或多个人体姿态估计

在计算机视觉中,人体姿态估计(关键点检测)是一个很常见的问题,在体育健身、动作采集、3D试衣、舆情监测等领域具有广阔的应用前景,本文要使用的检测方法就是基于OpenPose的人体姿态估计方法。 一、OpenPose简介 OpenPose人体姿态识别项目是美国卡耐基梅隆大学(CMU)基于卷积神经网络(CNN)和监督学习(SL)并以Caffe为框架开发的开源库。可以实现人体动作、面部表情、手指运动等姿...

weixin_42709563的博客 8404

JDIC(Jdesktop Integration Components)入门

摘要本文简单介绍了JDIC(JDesktop Integration Components)的用途,以及以实例的形式教你如何使用JDIC调用或者整合本地桌面环境的组件或应用程序。 如果你经常访问java.net,或者读过JavaOne的新闻报道,你可能听过Jdesktop Integration Components(JDIC)。这些新的API终于能让Java开发人员做那些我们曾经羡慕

四方的专栏 1847

SQL注入:联合查询的三个绕过技巧

在SQL注入中,可以利用科学计数法来绕过对输入的限制。例如,可以使用科学计数法来绕过对字符串长度的限制,通过将字符串拆分成多个部分并使用科学计数法来表示。此外,还可以利用数据库的特定特性或语法来替代原始的查询语句,从而执行联合查询或其他恶意操作。另外,还可以尝试利用无列名注入的技巧,通过在原始查询中使用通配符或其他方式来绕过对列名的限制,从而执行恶意操作。

qq_68163788的博客 3792

JDIC的使用

<br />如果程序员在windows平台中自己开发程序使用到JDIC,在自己的项目中导入相关的jar包如jdic.jar.,并将jdic的jdic.dll和tray.dll放到系统jre的bin目录下<br />具体操作如下:<br />摘录<br />相关下载https://jdic.dev.java.net<br /> 本文简单介绍了JDIC(JDesktop Integration Components)的用途,以及以实例的形式教你如何使用JDIC调用或者整合本地桌面环境的组件或应用程序。<br

懒虫一个V 1万+

Ubuntu 26.04 本地安装 GitLab CE 完整教程(非 Docker 方式)

本文详细介绍了在Ubuntu 26.04系统上通过Omnibus包安装GitLab CE的完整流程。主要内容包括:环境准备(系统要求、依赖安装)、配置清华镜像源、执行安装命令、修改配置文件、服务管理命令以及常见问题解决方法。文章特别强调了内存要求(建议4GB以上)、首次登录密码获取、HTTPS安全配置等关键点,并提供了性能优化建议和安全设置指导。相比Docker方式,Omnibus安装具有性能更好、管理方便等优势,适合需要私有化部署GitLab的场景。

1369

Eureka自我保护机制

Eureka自我保护机制 默认情况下,当eureka server在一定时间内没有收到实例的心跳,便会把该实例从注册表中删除(默认是90秒),但是,如果短时间内丢失大量的实例心跳,便会触发eureka server的自我保护机制,比如在开发测试时,需要频繁地重启微服务实例,但是我们很少会把eureka server一起重启(因为在开发过程中不会修改eureka注册中心),当一分钟内收到的心跳数大量减少时,会触发该保护机制。可以在eureka管理界面看到Renews threshold和Renews(last

Soul_Ming的博客 542

java在浏览器打开word_利用Java程序实现网页浏览器.docx

利用Java程序实现网页浏览器使用VC,VB或者C#的开发者们对于在程序里面嵌入一个网页来说,那真是小事一桩。但是在JAVA里面,却几乎是不可能实现的任务。 JEditorPane虽然说可以打开网页,但是它那解析速度以及解析质量,对于今天日益复杂的网页内容来说,就像没有一样。今天我们就使用一个开源的组件(jdic)来实现在JAVA程序里面嵌入网页的效率。  下面言归正转吧,我们来介绍一下这个开源的...

weixin_42497839的博客 726

ADS2020实战:村田电感.s2p与.mod文件导入全流程对比(附仿真结果差异分析)

本文详细对比了ADS2020中村田电感的.s2p与.mod文件导入流程及仿真结果差异,重点分析了两种模型在低频段和高频段的精度表现。通过实际案例展示.s2p文件在高频仿真中的优势,以及.mod文件在低频和非线性特性模拟中的准确性,为射频电路设计提供模型选择策略和混合仿真技巧。

weixin_29289821的博客 519

The JDesktop Integration Components (JDIC) Introduction

Introduction JDIC consists of a collection of Java packages (JDIC API), all with the package name prefix org.jdesktop.jdic, and a JNLP application packaging tool (JDIC Packager). JDIC API i

1360

Yolov5自学笔记之一--从入门到入狱,功能强大不要乱用(实现yolov5的基本功能使用流程及训练自己的数据集)

零基础自学yolov5,学会简单使用和训练自己的数据集,在自己工作中使用

qq_41597915的博客 1万+

100天精通Python(基础篇)——第2天:基础语法详解(标识符、保留字、注释与代码结构)

100天精通Python(基础篇)——第2天:基础语法详解(标识符、保留字、注释与代码结构)

努力让自己发光,对的人才能迎着光而来 34万+

利用Java实现网页浏览器(转)

利用Java实现网页浏览器(转) 2011年07月18日      使用VC,VB或者C#的开发者们对于在程序里面嵌入一个网页来说,那真是小事一桩。但是在JAVA里面,却几乎是不可能实现的任务。 JEditorPane虽然说可以打开网页,但是它那解析速度以及解析质量,对于今天日益复杂的网页内容来说,就像没有一样。今天我们就使用一个开源的组件(jdic)来实现在JAVA程序里面嵌入网页...

ugv32ugv 247

OpenCV-Python实战(11)——OpenCV轮廓检测相关应用

在计算机视觉领域,轮廓通常指图像中对象边界的一系列点。因此,轮廓通常描述了对象边界的关键信息,包含了有关对象形状的主要信息,该信息可用于形状分析与对象检测和识别。在本文中,我们将学习如何利用获取到的轮廓,进行形状分析以及对象检测和识别。

盼小辉丶的博客 1万+

java中输出红字_使用JDIC实现Java界面嵌入Web浏览器 出红字

我想使用JDIC实现Java界面嵌入Web浏览器出错了,求帮助!下面是报错的红字Nativeloader!java.security.PrivilegedActionException:java.io.IOException:Nativeresourse[bin/windows/a...我想使用JDIC实现Java界面嵌入Web浏览器 出错了,求帮助!下面是报错的红字Native loader!j...

weixin_34615710的博客 195

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

上一篇: java反编译工具jd gui
下一篇: 培训
fancyerII
博客等级 码龄23年 48粉丝 164原创
评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值