Веб-страница не будет работать с JEdior Pane

Хорошо, привет всем, я все еще изучаю Java и просто возился с некоторыми вещами, я сделал графический интерфейс и имею JEditorPane для отображения веб-страницы при нажатии кнопки «Перейти».

Код, который не будет работать:

    private void goActionPerformed(java.awt.event.ActionEvent evt) {                                   
            String URL = url.getText();
    JEditorPane.setEditable(false);   

    try {
      JEditorPane.setPage("www.google.com");
    }catch (IOException e) {
      JEditorPane.setContentType("text/html");
      JEditorPane.setText("<html>Could not load " + URL);
    } 
}   

Любая помощь приветствуется, спасибо!


person Fusion    schedule 22.02.2014    source источник
comment
Является ли url объектом URL? Если это так, возможно, вам нужно использовать `toString()'? У вас отображаются какие-либо ошибки? Вы можете опубликовать это здесь?   -  person Alvin Bunk    schedule 22.02.2014
comment
Это JTextField, если это то, что вы имеете в виду (новый)   -  person Fusion    schedule 22.02.2014
comment
Я обновил код, чтобы он оставался в главном окне, и даже с уже размещенным URL-адресом он не будет работать.   -  person Fusion    schedule 22.02.2014


Ответы (2)


setPage требуется допустимый префикс протокола

jEditorPane.setPage("http://www.google.com");

Убедитесь, что ваше текстовое поле также имеет этот префикс (или, по крайней мере, аргумент URL-ссылки правильно сформирован)

person Reimeus    schedule 22.02.2014
comment
Это продвинуло меня дальше, но выглядит так: - person Fusion; 22.02.2014
comment
Да, к сожалению, JEditorPane поддерживает только HTML 3.2. Вы можете встроить JavaFX WebView. Вот пример от Oracle. - person Reimeus; 22.02.2014
comment
Есть ли способ добавить веб-просмотр через Swing? потому что это все, что у меня есть для моих вариантов. gyazo.com/3af0d160ca7517e73ab52e497ef6dea0 - person Fusion; 22.02.2014
comment
Я понимаю это, но у меня нет инструмента Webview для моего свинга. - person Fusion; 22.02.2014
comment
Вы имеете в виду, что у вас нет класса WebView. Вам нужна банка JavaFX в пути к классам. См. здесь. - person Reimeus; 22.02.2014

Попробуйте что-то вроде этого:

    JFrame frame = new JFrame();
    JTextField field = new JTextField();
    frame.add(field);
    frame.pack();
    frame.setVisible(true);

    JEditorPane pane = new JEditorPane();
    try {
        pane.setPage(field.getText());
        ...
    }
    catch (IOException e) {
        pane.setContentType("text/html");
        pane.setText("<html>Could not load ");
    }
...
person Alvin Bunk    schedule 22.02.2014