1. 首页
  2. 编程语言
  3. Java
  4. JDIC(JDesktop Integration Components)

JDIC(JDesktop Integration Components)

上传者: 2018-12-17 21:41:51上传 RAR文件 1.32MB 热度 36次
不用积分的,大家下载了都是为了学习嘛,呵呵,支持爱好学习的人!!!****************************************************JIDC提供了一种访问桌面组件的API其中JDK6.0就采纳了其中了一些,比如系统栏图标的SystemTray和SystemIcon,还有代表桌面的Desktop等等,可见这个API是挺不错的。由于网页浏览器的特殊性,标准的JDK并没有把它加入进来,但是我们一样可以下载它来使用这个功能。明显地,这个功能是用本地方法实现的,所以下载完以后,把jdic.dll放到我们的path目录中,比如system32文件夹下面,然后我们就可以使用它的功能从而增加我们的JAVA程序了。例子代码如下:/** Test1.java** Created on 2007-10-2, 17:29:30** To change this template, choose Tools | Templates* and o pen the template in the editor.*/package test2;import java.awt.BorderLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.net.MalformedURLException;import java.net.URL;import java.util.logging.Level;import java.util.logging.Logger;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.JTextField;import org.jdesktop.jdic.browser.IWebBrowser;import org.jdesktop.jdic.browser.WebBrowser;import org.jdesktop.jdic.browser.WebBrowserEvent;import org.jdesktop.jdic.browser.WebBrowserListenerAdapter;/**** @author hadeslee*/public class Test1 extends JPanel implements ActionListener { private JTextField input; private JButton go; private IWebBrowser web; public Test1() {  super(new BorderLayout());  initWindow(); } private void initWindow() {  try {   web = new WebBrowser();   web.addWebBrowserListener(new MyListener());   go = new JButton("转到");   input = new JTextField();   JPanel up = new JPanel(new BorderLayout());   up.add(input, BorderLayout.CENTER);   up.add(go, BorderLayout.EAST);   this.add(up, BorderLayout.NORTH);   this.add(web.asComponent(), BorderLayout.CENTER);   input.addActionListener(this);   go.addActionListener(this);  } catch (Exception ex) {   Logger.getLogger(Test1.class.getName()).log(Level.SEVERE, null, ex);  }  JFrame jf = new JFrame("JAVA浏览器");  jf.add(this, BorderLayout.CENTER);  jf.setSize(500, 300);  jf.setLocationRelativeTo(null);  jf.setVisible(true);  jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public void actionPerformed(ActionEvent ae) {  doOpen(); } private void doOpen() {  try {   String text = input.getText();   if (text == null || text.equals("")) {    return;   }   if (!text.toLowerCase().startsWith("http://")) {    text = "http://" + text;   }   web.setURL(new URL(text));  } catch (MalformedURLException ex) {   Logger.getLogger(Test1.class.getName()).log(Level.SEVERE, null, ex);  } } public static void main(String[] args) {  new Test1(); } private class MyListener extends WebBrowserListenerAdapter {  private MyListener() {}  @Override  public void documentCompleted(WebBrowserEvent arg0) {   System.out.println("文档下载完。。。");   web.executeScript("alert('文档下载完毕!')");   // web.setContent("Hello world!!" +   // "点我");   // web.removeWebBrowserListener(this);  } }}它比一般的别的实现好的地方就是,它可以很完全地和JAVA代码进行交互,包括浏览器事件的监听,浏览器内容的获取,以及自己调用浏览器来执行一段javasript,这些都是很强大并且很实用的功能。****************************************************
用户评论
码姐姐匿名网友 2018-12-17 21:41:51

可以用,不知有没有更新的版本。

码姐姐匿名网友 2018-12-17 21:41:51

好的资料啊

码姐姐匿名网友 2018-12-17 21:41:51

不错,挺好的

码姐姐匿名网友 2018-12-17 21:41:51

很好,谢谢!

码姐姐匿名网友 2018-12-17 21:41:51

好资料,谢谢分享!!正在学习中。。。

码姐姐匿名网友 2018-12-17 21:41:51

资源是个好东西,但是64位的机子不能用!!

码姐姐匿名网友 2018-12-17 21:41:51

好东西好东西好东西好东西好东西好东西好东西

码姐姐匿名网友 2018-12-17 21:41:51

不支持64位,资源还是不错的

码姐姐匿名网友 2018-12-17 21:41:51

自己是新手,所以还要研究下!!还不会用!!哈哈哈!!