Как добавить jBrowser в кадр после запуска?
У меня есть класс Starter, который запускает мое приложение:
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();
}
}
И когда я пытаюсь добавить jBrowser
к Frame
Я ничего не вижу о jBrowser
.. но я вижу в консоли это:
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)
Пожалуйста, помогите мне добавить jBrowser
к существующим jFrame
..
1 ответ
Пожалуйста, помогите мне добавить jBrowser к существующему jFrame.
Когда вы добавляете (или удаляете) компонент в видимый графический интерфейс, базовый код:
panel.add(...);
panel.revalidate();
panel.repaint();
Выше для Swing, который вы спрашиваете, говорит, что вы используете, но пример кода, похоже, использует Frame вместо JFrame. Попробуйте использовать JFrame. Или для AWT, я думаю, вы бы использовали validate()
,