How to add jBrowser to the frame after the start?

392 Views Asked by At

I have a Starter class, which runs my application:

public class Starter {  
    public static Panel createContent() {
          Panel contentPane = new Panel();
          final JWebBrowser webBrowser = new JWebBrowser();
          webBrowser.navigate("http://orientalcraft.org/");
          webBrowser.setBarsVisible(false);   
          webBrowser.setStatusBarVisible(false);  
          contentPane.add(webBrowser);
          return contentPane;

      }

    public static void main(String[] args) throws IOException, Exception
    {
        Frame.go();
        NativeInterface.open();
        SwingUtilities.invokeLater(new Runnable() {
            @Override
            public void run() {

                Frame frame = Frame.mainFrame; //mainFrame - instance of Frame
                frame.getContentPane().add(createContent(), BorderLayout.CENTER);
            }

        });

        NativeInterface.runEventPump();   
    }
}

And when I trying to add jBrowser to the Frame, I see nothing about jBrowser.. But I can see in a console this:

java.net.SocketException: Connection reset
    at java.net.SocketInputStream.read(SocketInputStream.java:196)  at java.net.SocketInputStream.read(SocketInputStream.java:196)
    at java.net.SocketInputStream.read(SocketInputStream.java:122)
    at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
    at java.io.BufferedInputStream.read(BufferedInputStream.java:254)
    at java.io.ObjectInputStream$PeekInputStream.peek(ObjectInputStream.java:2293)
    at java.io.ObjectInputStream$BlockDataInputStream.peek(ObjectInputStream.java:2586)
    at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2596)
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1318)
    at java.io.ObjectInputStream.readUnshared(ObjectInputStream.java:460)
    at chrriis.dj.nativeswing.swtimpl.core.OutProcessSocketsMessagingInterface.readMessageFromChannel(OutProcessSocketsMessagingInterface.java:116)
    at chrriis.dj.nativeswing.swtimpl.core.MessagingInterface$2.run(MessagingInterface.java:392)

Please, help me to add a jBrowser to existing jFrame..

1

There are 1 best solutions below

1
On

Please, help me to add a jBrowser to existing jFrame..

When you add (or remove) a component to a visible GUI the basic code is:

panel.add(...);
panel.revalidate();
panel.repaint();

The above is for Swing which you question says you are using, but the example code appears to be using a Frame instead of a JFrame. Try using a JFrame. Or for AWT I think you would use validate().