2014-01-13 3 views
1

Мой код читает HTML-файл, и я хочу показать его в новом фрейме как веб-страницу. Но я не знаю - как я могу это сделать?Как я могу отобразить HTML-файл в качестве веб-страницы?

Это мой код:

public class EditorPaneLoad extends JFrame{ 

public EditorPaneLoad() throws Exception{ 

    FileReader reader = new FileReader("a.html"); 
    JEditorPane editor = new JEditorPane(); 
    JTextPane editor = new JTextPane(); 
    editor.setContentType("text/html"); 
    editor.setEditable(false); 
    editor.read(reader, null); 
    //System.out.println(editor.getText()); 
    //System.out.println("\n------------\n"); 
    Document doc = editor.getDocument(); 
    // System.out.println(doc.getText(0, doc.getLength())); 
    JScrollPane scrollPane = new JScrollPane(editor); 
    scrollPane.setPreferredSize(new Dimension(300, 200)); 
    getContentPane().add(scrollPane); 
} 

public static void main(String[] args) 
    throws Exception 
{ 
    EditorPaneLoad frame = new EditorPaneLoad(); 
    frame.setDefaultCloseOperation(EXIT_ON_CLOSE); 
    frame.pack(); 
    frame.setLocationRelativeTo(null); 
    frame.setVisible(true); 
} 
} 
+0

Я не понимаю. Текущий код должен «показывать HTML в формате HTML». Что еще вы ожидаете? –

+0

Я хочу сделать это в графическом интерфейсе типа дизайна в netbeans с кнопкой, но я не могу – user3188155

+0

Вы хотите сделать HTML-редактор? Обратите внимание, что 'JEditorPane' никогда не предназначался для отображения« реального мира HTML ». Он поддерживает только HTML ** 3.2 ** и ограниченный стиль. Никакие апплеты, флеш или JavaScript не поддерживаются вообще. Конечно, это было бы не полезно для разработки «реального мира HTML»! –

ответ

1
// opens "a.html" in the default browser.. 
Desktop.getDesktop().open(new File("a.html")); 

Для получения более подробной информации см. Desktop.open(File).

+0

@ user3188155 Это запустит браузер по умолчанию, показывающий конкретный html. Это не то же самое, что показывать html через ** ваше приложение для рабочего стола **. –

+0

@PantelisNatsiavas Но обратите внимание, что это покажет его * «как веб-страницу, как настоящую страницу в браузере» * в соответствии с 2-м комментарием OP. –

2

Если я правильно, вы хотите сделать HTML через окно рабочего стола вашего приложения.

Возможно, flying saucer поможет вам. Альтернатива, Lobo будет отображаться с использованием javafx, но она будет поддерживать только HTML 4.

Надеюсь, я помог!

+0

это именно то, что я хочу :) – user3188155

+0

У меня нет браузера, у меня просто есть File.HTML, я его прочитал, и я хотите показать этот контент как настоящую веб-страницу, но только в новом фрейме – user3188155