Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / JTextPane / 7 сообщений из 7, страница 1 из 1
31.10.2005, 07:59
    #33352082
Vector
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JTextPane
Привет всем.
Народ, что-то освсем туплю..
Как загрузить файл в JTextPane???
Есть этот компонент, есть файл (путь до html файла).
Как загрузить файл в этот JTextPane???
Пробовал java.net.URL - он не принимает файла. Может загрузить страницу с адреса в сети, но файл - нет.
Пробовал с помощью
Код: plaintext
JTextPane.getDocument().insertString(str);
Получаю исключение!!!
Строка формируется при считывании файла с помощью java.io.FileReader и в дебагерре выглядит вполне нормально!
Неужели нет простого пути для загрузки файла?

С уважение Vector.
...
Рейтинг: 0 / 0
31.10.2005, 08:11
    #33352091
Vector
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JTextPane
Вот такое Exception:

Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: javax.swing.text.DefaultStyledDocument

at javax.swing.text.html.ParagraphView.getStyleSheet(ParagraphView.java:115)
at javax.swing.text.html.ParagraphView.setPropertiesFromAttributes(ParagraphView.java:83)
at javax.swing.text.ParagraphView.<init>(ParagraphView.java:40)
at javax.swing.text.html.ParagraphView.<init>(ParagraphView.java:37)
at javax.swing.text.html.HTMLEditorKit$HTMLFactory.create(HTMLEditorKit.java:1191)
at javax.swing.text.CompositeView.loadChildren(CompositeView.java:95)
at javax.swing.text.CompositeView.setParent(CompositeView.java:122)
at javax.swing.plaf.basic.BasicTextUI$RootView.setView(BasicTextUI.java:1229)
at javax.swing.plaf.basic.BasicTextUI.setView(BasicTextUI.java:596)
at javax.swing.plaf.basic.BasicTextUI.modelChanged(BasicTextUI.java:585)
at javax.swing.plaf.basic.BasicTextUI$UpdateHandler.propertyChange(BasicTextUI.java:1687)
at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:333)
at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:270)
at java.awt.Component.firePropertyChange(Component.java:7159)
at javax.swing.text.JTextComponent.setDocument(JTextComponent.java:412)
at javax.swing.JTextPane.setDocument(JTextPane.java:106)
at autotraffic2006.HelpPanel.loadHelpFile(HelpPanel.java:93)
at autotraffic2006.HelpPanel.TopicsTreeValueChanged(HelpPanel.java:187)
at autotraffic2006.HelpPanel.access$000(HelpPanel.java:65)
at autotraffic2006.HelpPanel$1.valueChanged(HelpPanel.java:161)
at javax.swing.JTree.fireValueChanged(JTree.java:2399)
at javax.swing.JTree$TreeSelectionRedirector.valueChanged(JTree.java:2770)
at javax.swing.tree.DefaultTreeSelectionModel.fireValueChanged(DefaultTreeSelectionModel.java:629)
at javax.swing.tree.DefaultTreeSelectionModel.notifyPathChange(DefaultTreeSelectionModel.java:1078)
at javax.swing.tree.DefaultTreeSelectionModel.setSelectionPaths(DefaultTreeSelectionModel.java:287)
at javax.swing.tree.DefaultTreeSelectionModel.setSelectionPath(DefaultTreeSelectionModel.java:170)
at javax.swing.JTree.setSelectionPath(JTree.java:1174)
at javax.swing.plaf.basic.BasicTreeUI.selectPathForEvent(BasicTreeUI.java:2256)
at javax.swing.plaf.basic.BasicTreeUI$Handler.handleSelection(BasicTreeUI.java:3442)
at javax.swing.plaf.basic.BasicTreeUI$Handler.mousePressed(BasicTreeUI.java:3403)
at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:222)
at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:221)
at java.awt.Component.processMouseEvent(Component.java:5485)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3126)
at java.awt.Component.processEvent(Component.java:5253)
at java.awt.Container.processEvent(Container.java:1966)
at java.awt.Component.dispatchEventImpl(Component.java:3955)
at java.awt.Container.dispatchEventImpl(Container.java:2024)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3889)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
at java.awt.Container.dispatchEventImpl(Container.java:2010)
at java.awt.Window.dispatchEventImpl(Window.java:1774)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)

при добавлении вот такой строки:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
...
Рейтинг: 0 / 0
31.10.2005, 09:49
    #33352231
А.Грасоff™
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JTextPane
VectorПробовал java.net.URL - он не принимает файла. Может загрузить страницу с адреса в сети, но файл - нет.покажи, как пробовал.
...
Рейтинг: 0 / 0
31.10.2005, 11:24
    #33352464
Vector
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JTextPane
Пробовал вот так:
Код: plaintext
1.
2.
3.
4.
5.
6.
java.net.URL helpUrl =  new  java.net.URL("./HTMLHelp/About.html");
 if (helpUrl!= null ){
  TextPane.getPage(helpUrl);
} else {
  javax.swing.JOptionPane.showMessageDialog( null , "Cannot open help file", "Error", javax.swing.JOptionPane.ERROR_MESSAGE);
}

В дебагерре получаю, что helpUrl = null
...
Рейтинг: 0 / 0
31.10.2005, 11:38
    #33352510
А.Грасоff™
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JTextPane
URL url = new URL("file://PATH_TO_FILE");
...
Рейтинг: 0 / 0
31.10.2005, 11:49
    #33352547
Vector
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JTextPane
Да что-то не работает:
Код: plaintext
1.
java.net.URL helpURL= new  java.net.URL("file://C:\\Temp\\Introduction.html");
...
Рейтинг: 0 / 0
31.10.2005, 12:57
    #33352785
Vector
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JTextPane
Ну накнец-то понял, блин!
вот как надо:

"file://localhost/c:/temp/introduction.html"


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
 try {
    java.net.URL helpURL= new  java.net.URL("file://localhost/c:/temp/introduction.html");
     if (helpURL!= null )
        TextPane.setPage(helpURL);
     else 
        javax.swing.JOptionPane.showMessageDialog( null , "Cannot find help file ["+file+"]", "Error", javax.swing.JOptionPane.ERROR_MESSAGE);
} catch (Exception e)    {
    javax.swing.JOptionPane.showMessageDialog( null , "Error: "+e.getMessage(), "Error", javax.swing.JOptionPane.ERROR_MESSAGE);
        }

Всем большое спасибо!

С уважением Vector
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / JTextPane / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]