С Новым годом! Форум программистов, компьютерный форум, киберфорум
Java
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/78: Рейтинг темы: голосов - 78, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 05.10.2011
Сообщений: 9
1

Отображение HTML странички в JAVA-Приложении

05.10.2011, 21:51. Показов 16028. Ответов 15
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть ли в Java какой-нибудь компонент библиотеки Swing, который позволяет исходный html текст представить на форме в виде web странички?
Надо написать что-то типо своего броузера.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.10.2011, 21:51
Ответы с готовыми решениями:

Java-Applet из HTML-странички?
Добрый день. Я прошерстил форум и несмотря на обилие подобных вопросов решение своей проблемы не...

Как правильно реализовать java replace в теле странички html?
Решил реализовать Мобильную версию для пользователей, чтобы людям было легко с телефонов заходить и...

Отображение HTML-страницы в приложении
есть ли в борланде какое-либо окошко в которое можно подключить html документ, и при запуске этой...

Отображение HTML страницы в приложении.
Господа, неподскажите ли, как спомощью С# отобразить страницу нтмl. например в Delphi есть...

15
mishgun
05.10.2011, 22:22 2
Smotrity v storony HTML i vseh classov vniz
0 / 0 / 0
Регистрация: 05.10.2011
Сообщений: 9
06.10.2011, 11:06  [ТС] 3
Почему все говорят либо посмотри ниже, посмотри ниже, хотя уже всё облазила и ничего там про это не написано, либо, прочитай документацию от sun-а по библиотекам javax.swing.text.html и
javax.swing.text.html.parser, в которой ничего полезного нет.
Вам что трудно пару строчек в пример напиать!?
0
0 / 0 / 4
Регистрация: 14.08.2007
Сообщений: 307
06.10.2011, 11:52 4
если про отображение HTML то возможности в swing-е не очень богатые
читай:
http://java.sun.com/docs/books/tutorial/uiswing/components/html.html
http://java.sun.com/docs/books/tutorial/uiswing/components/text.html
строчки кода
http://java.sun.com/docs/books/tutorial/uiswing/components/example-1dot4/index.html#TextSamplerDemo
и вот ещё:
http://javaalmanac.com/egs/javax.swing.text/ep_ShowHTML.html
http://javaalmanac.com/egs/javax.swing.text.html/GetLinks.html
http://javaalmanac.com/egs/javax.swing.text.html/GetText.html
0
0 / 0 / 0
Регистрация: 05.10.2011
Сообщений: 9
06.10.2011, 12:38  [ТС] 5
Спасибо, сейчас посмотрю!
0
0 / 0 / 0
Регистрация: 05.10.2011
Сообщений: 9
06.10.2011, 15:09  [ТС] 6
Первые 4 ссылки совсем не то, мне надо не форматирование текста
на кнопочках с помощью html тэгов, а отображение html файла в java-приложении, как в IE(формочки,кнопочки,таблицы, текст и т.д.).
Надо считать html код из файла, отпарсить его и вставить на форму(так, чтобы он отображался как на броузере).
Кто-нибудь знает как это сделать?
P.S.
А за последние 2 ссылки спасибо, пригодятся!
0
0 / 0 / 4
Регистрация: 14.08.2007
Сообщений: 307
06.10.2011, 15:26 7
>> вставить на форму
мне всегда было интересно, что в таком контексте называют 'формой'
насколько я помню в свинге такого компонента нет
Вы не могли бы пояснить ?
0
0 / 0 / 4
Регистрация: 14.08.2007
Сообщений: 307
06.10.2011, 15:40 8
если Вы хотите реализовать браузер самостоятельно, то готов Вас обрадовать - задача не из тривиальных. Советую попробовать поискать в гугле готовое решение. Правда похоже их не так много. Я походив минут 5 нашёл из интересного только вот это.
http://www.webrenderer.com/
но правда платный.
0
0 / 0 / 0
Регистрация: 05.10.2011
Сообщений: 9
06.10.2011, 16:03  [ТС] 9
'Вставить на форму', я имею ввиду как-то так:
(как я представляю это должно выглядеть)
Java
1
2
3
4
5
6
7
8
9
10
//Чтение из файла и парсинг
BufferedReader fin = new BufferedReader(new FileReader(path));
EditorKit kit = new HTMLEditorKit();
HTMLDocument document = (HTMLDocument)kit.createDefaultDocument();
kit.read(fin, document, 0);
//после этого надо как-то запихать это на форму, т.е.:
JFrame frame = new JFrame();
JPanel panel = new JPanel();
panel.add(document);
frame.getContentPane().add(panel);
По идее, должно получаться, т.к. HTMLDocument класс библиотеки javax.swing.text.html, но что-то ничего не работает.
Может document надо добавлять не к JPanel, а куда-то ещё?
0
0 / 0 / 0
Регистрация: 05.10.2011
Сообщений: 9
06.10.2011, 16:06  [ТС] 10
Нет, браузер мне не надо реализовать, так было написано, чтобы вам легче было понять смысл задачи.
0
0 / 0 / 4
Регистрация: 14.08.2007
Сообщений: 307
06.10.2011, 16:16 11
а как именно 'ничего не работает' ?
0
0 / 0 / 4
Регистрация: 14.08.2007
Сообщений: 307
06.10.2011, 16:38 12
Я всё таки не пойму чем Вам четвёртая ссылка не понравилась.
По моему всё отлично работает, как раз так как Вам нужно.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import javax.swing.*;
import java.io.IOException;
 
/**
 * HTMLDemo
 * @author Scroodge
 */
public class HTMLDemo {
 
    public static void show(String url) throws IOException {
        JFrame.setDefaultLookAndFeelDecorated(true);
        JFrame frame = new JFrame('HTML Demo');
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        //
        JEditorPane editorPane = new JEditorPane(url);
        editorPane.setEditable(false);
        frame.getContentPane().add(editorPane);
        //
        frame.setSize(700, 800);
        frame.setVisible(true);
    }
 
    public static void main(final String[] args) {
        String url = 'http://javaalmanac.com/egs/javax.swing.text/ep_ShowHTML.html';
        if (args.length > 0) {
            url = args[0];
        }
        try {
            show(url);
        } catch (IOException e) {
            e.printStackTrace();
            System.exit(1);
        }
    }
}
0
0 / 0 / 0
Регистрация: 05.10.2011
Сообщений: 9
06.10.2011, 18:20  [ТС] 13
Кажется, получилось.
Большое вам спасибо!
0
0 / 0 / 0
Регистрация: 05.10.2011
Сообщений: 9
10.10.2011, 11:53  [ТС] 14
А можно сделать как-нибудь так, чтобы JEditorPane понимал JavaScript, а-то он понимает только простейший html, даже фреймы не выводит?
0
0 / 0 / 4
Регистрация: 14.08.2007
Сообщений: 307
11.10.2011, 01:14 15
>> А можно сделать как-нибудь так, чтобы JEditorPane понимал JavaScript
честно говоря не интересовался, но думаю что нет.
Задекларировано то чт Swing компоненты смогут рендерить HTML, JavaScript же к HTML не относится.
А про фреймы лучше забудьте по моему их давно же стараются не использовать
0
0 / 0 / 1
Регистрация: 29.05.2009
Сообщений: 52
11.10.2011, 13:17 16
>А можно сделать как-нибудь так, чтобы JEditorPane понимал JavaScript, а-то он понимает только простейший html, даже фреймы не выводит?
Это не бага JEditorPane, просто JavaScript не подходит под понятие редактируемого

Для твоих целей, возможно, будет лучше использовать SWT с интеграцией MS InternetExplorer (в качестве HTML виджета).
Либо проект JDIC - он умеет интегрироваться с Mozilla, FireFox, MS IE.
Можно начать от сюда:
http://weblogs.java.net/blog/georgez/archive/2005/07/jdicjavaone_200.html
0
11.10.2011, 13:17
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.10.2011, 13:17
Помогаю со студенческими работами здесь

Как вытащить текст со Html странички? Html Agility Pack
Всё очень просто как вытащить текст с Html странички с помощью Html Agility Pack? К примеру у нас...

Отображение процесса загрузки странички WebBrowser-а в ProgressBar-е
Доброго всем дня! Появилась такая проблема: на форме разместил listview, webbrowser, progressbar. В...

Создание странички в html
Послезавтра зачет, надо сделать страничку про какого-то ученого, например, Ньютон, Эйнштейн, я в...

Вытаскивание слова из html странички
Здраствуйте, В исходном коде странички есть строка <tr><th>Страна:</th><td>Китай</td></tr> как...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru