2012-04-22 17 views
0

JTabbedPaneのタブにブラウザウィンドウを表示するのにDJ-Native-Swing - JWebBrowserを使用しています。このタブには他のタブも含まれています。
私は(NetBeansの7.1.1に)しようとしているコードは次のとおりです。main(String[] arg)方法でDJネイティブスイングJWebBrowserパネルがJTabbedPane内で機能しない

browserPanel = (JPanel)SimpleWebBrowserExample.createContent(); // I use this line in browserPanel Properties > Customize Code

NativeInterface.open(); 
    /* 
    * Create and display the form 
    */ 
    java.awt.EventQueue.invokeLater(new Runnable() { 

     @Override 
     public void run() { 
      new MyFrame().setVisible(true); 
     } 
    }); 
NativeInterface.runEventPump(); 

しかし、コードが動作していない、JWebBrowserですパネルには表示されません。これ以外に何が必要ですか? 私はWindows 7 x64、JDK1.7.0です。DJ Native Swingに必要なすべてのライブラリが含まれています。

また、スタンドアロンプ​​ログラムもうまくいきます。

私はこの答えは後半に少し来たが、これは私がここで

はJPanelのを拡張し、ブラウザを定義するクラスでそれをやった方法であることを認識

答えて

0

public class BrowserPanel extends JPanel { 

public BrowserPanel() { 
    super(new BorderLayout()); 
    JPanel webBrowserPanel = new JPanel(new BorderLayout()); 
    webBrowserPanel.setBorder(BorderFactory.createTitledBorder("")); 
    final JWebBrowser webBrowser = new JWebBrowser(); 
    webBrowser.navigate("bigfarm.goodgamestudios.com/?country=RO"); 
    webBrowserPanel.add(webBrowser, BorderLayout.CENTER); 
    add(webBrowserPanel, BorderLayout.CENTER); 
    } 

}

次に、JFrameを拡張し、JTabbedPaneを保持するクラスを作成しました。

public class WhateverFrame extends JFrame{ 



    private JTabbedPane tabbedPane; 



    public WhateverFrame() { 


     BrowserPanel x=new BrowserPanel(); 

     tabbedPane = new JTabbedPane(JTabbedPane.TOP); 


     tabbedPane.add(x, BorderLayout.WEST); 
     tabbedPane.setTitleAt(0, "Start"); 
     /* 
     * add the tabbedPane to the content pane 
     */ 

     setContentPane(tabbedPane); 
    } 

Thメインは次のようになります:

public static void main(String[]args){ 

     UIUtils.setPreferredLookAndFeel(); 
     NativeInterface.open(); 
     SwingUtilities.invokeLater(new Runnable() { 


     public void run() { 
     WhateverFrame frame=new WhateverFrame(); 
       frame.setExtendedState(Frame.MAXIMIZED_BOTH); 
       frame.setLocation(0,0); 
       frame.setVisible(true); 


      }  
     }); 
    } 
関連する問題