zoukankan      html  css  js  c++  java
  • 利用djnativeswing获取跳转url(注意: 这是非弹窗,非新窗口的url,而是新页面的url)

    package org.jivesoftware.pmsaas.sys.domain;
    
    import java.awt.BorderLayout;
    import java.awt.event.ComponentEvent;
    import java.awt.event.ComponentListener;
    import java.awt.event.ContainerEvent;
    import java.awt.event.ContainerListener;
    import java.awt.event.FocusEvent;
    import java.awt.event.FocusListener;
    import java.awt.event.HierarchyBoundsListener;
    import java.awt.event.HierarchyEvent;
    import java.awt.event.InputMethodEvent;
    import java.awt.event.InputMethodListener;
    import java.awt.event.KeyEvent;
    import java.awt.event.KeyListener;
    import java.awt.event.MouseEvent;
    import java.awt.event.MouseListener;
    import java.util.Hashtable;
    import java.util.Map;
    
    import javax.swing.JPanel;
    
    import chrriis.dj.nativeswing.swtimpl.components.JWebBrowser;
    import chrriis.dj.nativeswing.swtimpl.components.WebBrowserCommandEvent;
    import chrriis.dj.nativeswing.swtimpl.components.WebBrowserEvent;
    import chrriis.dj.nativeswing.swtimpl.components.WebBrowserListener;
    import chrriis.dj.nativeswing.swtimpl.components.WebBrowserNavigationEvent;
    import chrriis.dj.nativeswing.swtimpl.components.WebBrowserWindowOpeningEvent;
    import chrriis.dj.nativeswing.swtimpl.components.WebBrowserWindowWillOpenEvent;
    
    
    /**
     * 该类是一个浏览器类 也是面板类 该类中面板和浏览器整合为一体 ----也就是浏览器面板
     * */
    public class NetBrowser extends JPanel{
    
    	/**
    	 * 
    	 */
    	private static final long serialVersionUID = -679703553152283868L;
    		
    	 	private JPanel webBrowserPanel;
    	 	public static Map<String,JWebBrowser>t_jwbrowsers=new Hashtable<String, JWebBrowser>();;
    	    private static JWebBrowser webBrowser;
    	    
    
    	    public NetBrowser(String url)
    	    {
    	         super(new BorderLayout());
    	         webBrowserPanel = new JPanel(new BorderLayout());
    	         webBrowser = new JWebBrowser();
    	         /**
    			          * native swing 官方API解释
    			          * navigate
    		
    		public boolean navigate(String resourceLocation)
    		Navigate to a resource, with its location specified as a URL or path.
    		Parameters:
    		resourceLocation - the URL or path.
    		Returns:
    		true if the navigation was successful.
    	          * */
    	         webBrowser.navigate(url);
    	         webBrowser.setButtonBarVisible(false);
    	         webBrowser.setMenuBarVisible(true);
    	         webBrowser.setBarsVisible(false);
    	         webBrowser.setStatusBarVisible(false);
    	         
    	         
    	         webBrowser.addWebBrowserListener(new WebBrowserListener() {
    				
    				@Override
    				public void windowWillOpen(WebBrowserWindowWillOpenEvent arg0) {
    					JWebBrowser jwb=arg0.getNewWebBrowser();
    					String location=jwb.getResourceLocation();
    					System.out.println(location);
    				}
    				
    				@Override
    				public void windowOpening(WebBrowserWindowOpeningEvent arg0) {
    //					JWebBrowser jwb=arg0.getNewWebBrowser();
    //					String location=jwb.getResourceLocation();
    //					System.out.println(location);
    				}
    				
    				@Override
    				public void windowClosing(WebBrowserEvent arg0) {
    					// TODO Auto-generated method stub
    					
    				}
    				
    				@Override
    				public void titleChanged(WebBrowserEvent arg0) {
    					
    				}
    				
    				@Override
    				public void statusChanged(WebBrowserEvent arg0) {
    					
    				}
    				
    				@Override
    				public void locationChanging(WebBrowserNavigationEvent arg0) {
    					String location=arg0.getNewResourceLocation();
    					System.out.println(location);
    				}
    				
    				@Override
    				public void locationChanged(WebBrowserNavigationEvent arg0) {
    					// TODO Auto-generated method stub
    					
    				}
    				
    				@Override
    				public void locationChangeCanceled(WebBrowserNavigationEvent arg0) {
    
    				}
    				
    				@Override
    				public void loadingProgressChanged(WebBrowserEvent arg0) {
    					
    				}
    				
    				@Override
    				public void commandReceived(WebBrowserCommandEvent arg0) {
    					
    				}
    			});
    	         
    	         
    	         
    	         //webBrowserPanel与webBrowser互相包含
    	         webBrowserPanel.add(webBrowser, BorderLayout.CENTER);
    	         add(webBrowserPanel, BorderLayout.CENTER);
    	         t_jwbrowsers.put(url, webBrowser);
    	        
    	    }
    	    
    	    public static JWebBrowser getJWebBrowser(String url){
    	    	return t_jwbrowsers.get(url);
    	    }
    		
    	    
    	    
    	    
    }
    
    I'm falling off the sky all alone.The courage inside is gonna break the fall. Nothing can dim my light within. I am That I am 程序 = 数据结构 + 算法
  • 相关阅读:
    awt
    登录校验 简单实现
    事务隔离级别
    事务的四大特性(ACID)
    多线程简单了解
    Eureka bug
    什么是存储过程
    filter和servlet的区别
    说说你对多线程锁机制的理解
    session的生命周期,session何时创建,何时销毁,session销毁的方式
  • 原文地址:https://www.cnblogs.com/IamThat/p/2971350.html
Copyright © 2011-2022 走看看