<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_Tutorial%2FSwing%2FJEditorPane</id>
		<title>Java Tutorial/Swing/JEditorPane - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_Tutorial%2FSwing%2FJEditorPane"/>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java_Tutorial/Swing/JEditorPane&amp;action=history"/>
		<updated>2026-04-09T10:40:51Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://jexp.ru/index.php?title=Java_Tutorial/Swing/JEditorPane&amp;diff=3849&amp;oldid=prev</id>
		<title> в 17:44, 31 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java_Tutorial/Swing/JEditorPane&amp;diff=3849&amp;oldid=prev"/>
				<updated>2010-05-31T17:44:27Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 17:44, 31 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://jexp.ru/index.php?title=Java_Tutorial/Swing/JEditorPane&amp;diff=3850&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java_Tutorial/Swing/JEditorPane&amp;diff=3850&amp;oldid=prev"/>
				<updated>2010-05-31T15:31:53Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==  Change mouse cursor during mouse-over action on hyperlinks ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.io.FileNotFoundException;&lt;br /&gt;
import javax.swing.JEditorPane;&lt;br /&gt;
import javax.swing.event.HyperlinkEvent;&lt;br /&gt;
import javax.swing.event.HyperlinkListener;&lt;br /&gt;
import javax.swing.text.html.HTMLDocument;&lt;br /&gt;
import javax.swing.text.html.HTMLFrameHyperlinkEvent;&lt;br /&gt;
public class Main implements HyperlinkListener {&lt;br /&gt;
  private JEditorPane pane;&lt;br /&gt;
  public Main(JEditorPane jep) {&lt;br /&gt;
    pane = jep;&lt;br /&gt;
  }&lt;br /&gt;
  public void hyperlinkUpdate(HyperlinkEvent he) {&lt;br /&gt;
    HyperlinkEvent.EventType type = he.getEventType();&lt;br /&gt;
    if (type == HyperlinkEvent.EventType.ENTERED) {&lt;br /&gt;
        System.out.println(he.getURL().toString());&lt;br /&gt;
    } else if (type == HyperlinkEvent.EventType.EXITED) {&lt;br /&gt;
      System.out.println(&amp;quot;Exited&amp;quot;);&lt;br /&gt;
    } else if (type == HyperlinkEvent.EventType.ACTIVATED) {&lt;br /&gt;
      if (he instanceof HTMLFrameHyperlinkEvent) {&lt;br /&gt;
        HTMLFrameHyperlinkEvent evt = (HTMLFrameHyperlinkEvent) he;&lt;br /&gt;
        HTMLDocument doc = (HTMLDocument) pane.getDocument();&lt;br /&gt;
        doc.processHTMLFrameHyperlinkEvent(evt);&lt;br /&gt;
      } else {&lt;br /&gt;
        try {&lt;br /&gt;
          pane.setPage(he.getURL());&lt;br /&gt;
          System.out.println(he.getURL().toString());&lt;br /&gt;
        } catch (FileNotFoundException fnfe) {&lt;br /&gt;
          pane.setText(&amp;quot;Could not open file: &amp;lt;tt&amp;gt;&amp;quot; + he.getURL() + &amp;quot;&amp;lt;/tt&amp;gt;.&amp;lt;hr&amp;gt;&amp;quot;);&lt;br /&gt;
        } catch (Exception e) {&lt;br /&gt;
          e.printStackTrace();&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  How to change mouse cursor during mouse-over action on hyperlinks ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import javax.swing.JEditorPane;&lt;br /&gt;
import javax.swing.event.HyperlinkEvent;&lt;br /&gt;
import javax.swing.event.HyperlinkListener;&lt;br /&gt;
import javax.swing.text.html.HTMLDocument;&lt;br /&gt;
import javax.swing.text.html.HTMLFrameHyperlinkEvent;&lt;br /&gt;
public class Main implements HyperlinkListener {&lt;br /&gt;
  private JEditorPane pane;&lt;br /&gt;
  public Main(JEditorPane jep) {&lt;br /&gt;
    pane = jep;&lt;br /&gt;
  }&lt;br /&gt;
  public void hyperlinkUpdate(HyperlinkEvent he) {&lt;br /&gt;
    HyperlinkEvent.EventType type = he.getEventType();&lt;br /&gt;
    if (type == HyperlinkEvent.EventType.ENTERED) {&lt;br /&gt;
      System.out.println(he.getURL().toString());&lt;br /&gt;
    } else if (type == HyperlinkEvent.EventType.EXITED) {&lt;br /&gt;
      System.out.println(&amp;quot;exit&amp;quot;);&lt;br /&gt;
    } else if (type == HyperlinkEvent.EventType.ACTIVATED) {&lt;br /&gt;
      if (he instanceof HTMLFrameHyperlinkEvent) {&lt;br /&gt;
        HTMLFrameHyperlinkEvent evt = (HTMLFrameHyperlinkEvent) he;&lt;br /&gt;
        HTMLDocument doc = (HTMLDocument) pane.getDocument();&lt;br /&gt;
        doc.processHTMLFrameHyperlinkEvent(evt);&lt;br /&gt;
      } else {&lt;br /&gt;
        try {&lt;br /&gt;
          pane.setPage(he.getURL());&lt;br /&gt;
          System.out.println(he.getURL().toString());&lt;br /&gt;
        } catch (Exception e) {&lt;br /&gt;
          e.printStackTrace();&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  JEditorPane Look and Feel ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Property StringObject TypeEditorPane.actionMapActionMapEditorPane.backgroundColorEditorPane.borderBorderEditorPane.caretAspectRatioNumberEditorPane.caretBlinkRateIntegerEditorPane.caretForegroundColorEditorPane.focusInputMapInputMapEditorPane.fontFontEditorPane.foregroundColorEditorPane.inactiveForegroundColorEditorPane.keyBindingsKeyBinding[ ]EditorPane.marginInsetsEditorPane.selectionBackgroundColorEditorPane.selectionForegroundColorEditorPaneUIString&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Loading HTML Documents as a StyledDocument into a JEditorPane ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The JEditorPane class provides the ability to display and edit multiple-attributed text.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.BorderLayout;&lt;br /&gt;
import java.io.FileReader;&lt;br /&gt;
import javax.swing.JEditorPane;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JScrollPane;&lt;br /&gt;
import javax.swing.text.html.HTMLEditorKit;&lt;br /&gt;
public class LoadingHTMLDocuments {&lt;br /&gt;
  public static void main(String args[])throws Exception {&lt;br /&gt;
    JFrame frame = new JFrame(&amp;quot;Tab Attributes&amp;quot;);&lt;br /&gt;
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    JEditorPane editorPane = new JEditorPane();&lt;br /&gt;
    editorPane.setEditorKit(new HTMLEditorKit());&lt;br /&gt;
    &lt;br /&gt;
    String filename = &amp;quot;yourFile.htm&amp;quot;;&lt;br /&gt;
    &lt;br /&gt;
    FileReader reader = new FileReader(filename);&lt;br /&gt;
    editorPane.read(reader, filename);&lt;br /&gt;
    JScrollPane scrollPane = new JScrollPane(editorPane);&lt;br /&gt;
    frame.add(scrollPane, BorderLayout.CENTER);&lt;br /&gt;
    frame.setSize(300, 150);&lt;br /&gt;
    frame.setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Loading Web Page To JEditorPane ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.net.URL;&lt;br /&gt;
import javax.swing.JEditorPane;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JScrollPane;&lt;br /&gt;
public class LoadingWebPageToJEditorPane {&lt;br /&gt;
  public static void main(String[] a)throws Exception {&lt;br /&gt;
    JFrame frame = new JFrame();&lt;br /&gt;
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    JEditorPane editorPane = new JEditorPane();&lt;br /&gt;
    editorPane.setPage(new URL(&amp;quot;http://www.jexp.ru&amp;quot;));&lt;br /&gt;
    frame.add(new JScrollPane(editorPane));&lt;br /&gt;
    frame.setSize(300, 200);&lt;br /&gt;
    frame.setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Show html ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import javax.swing.JEditorPane;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JScrollPane;&lt;br /&gt;
public class Main {&lt;br /&gt;
  public static void main(String[] args) throws Exception {&lt;br /&gt;
    JEditorPane editor = new JEditorPane(&amp;quot;text/html&amp;quot;,&lt;br /&gt;
        &amp;quot;&amp;lt;H1&amp;gt;A!&amp;lt;/H1&amp;gt;&amp;lt;P&amp;gt;&amp;lt;FONT COLOR=blue&amp;gt;blue&amp;lt;/FONT&amp;gt;&amp;lt;/P&amp;gt;&amp;quot;);&lt;br /&gt;
    editor.setEditable(false);&lt;br /&gt;
    JScrollPane pane = new JScrollPane(editor);&lt;br /&gt;
    JFrame f = new JFrame(&amp;quot;HTML Demo&amp;quot;);&lt;br /&gt;
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    f.getContentPane().add(pane);&lt;br /&gt;
    f.setSize(800, 600);&lt;br /&gt;
    f.setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Using Actions with Text Components: JEditorPane ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.util.Arrays;&lt;br /&gt;
import java.util.ruparator;&lt;br /&gt;
import javax.swing.Action;&lt;br /&gt;
import javax.swing.JEditorPane;&lt;br /&gt;
import javax.swing.text.JTextComponent;&lt;br /&gt;
public class ListActionsJEditorPane {&lt;br /&gt;
  public static void main(String args[]) {&lt;br /&gt;
    JTextComponent component = new JEditorPane();&lt;br /&gt;
    // Process action list&lt;br /&gt;
    Action actions[] = component.getActions();&lt;br /&gt;
    // Define comparator to sort actions&lt;br /&gt;
    Comparator&amp;lt;Action&amp;gt; comparator = new Comparator&amp;lt;Action&amp;gt;() {&lt;br /&gt;
      public int compare(Action a1, Action a2) {&lt;br /&gt;
        String firstName = (String) a1.getValue(Action.NAME);&lt;br /&gt;
        String secondName = (String) a2.getValue(Action.NAME);&lt;br /&gt;
        return firstName.rupareTo(secondName);&lt;br /&gt;
      }&lt;br /&gt;
    };&lt;br /&gt;
    Arrays.sort(actions, comparator);&lt;br /&gt;
    int count = actions.length;&lt;br /&gt;
    System.out.println(&amp;quot;Count: &amp;quot; + count);&lt;br /&gt;
    for (int i = 0; i &amp;lt; count; i++) {&lt;br /&gt;
      System.out.printf(&amp;quot;%28s : %s\n&amp;quot;,actions[i].getValue(Action.NAME),actions[i].getClass().getName());&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;Count: 53&lt;br /&gt;
                        beep : javax.swing.text.DefaultEditorKit$BeepAction&lt;br /&gt;
              caret-backward : javax.swing.text.DefaultEditorKit$NextVisualPositionAction&lt;br /&gt;
                 caret-begin : javax.swing.text.DefaultEditorKit$BeginAction&lt;br /&gt;
            caret-begin-line : javax.swing.text.DefaultEditorKit$BeginLineAction&lt;br /&gt;
       caret-begin-paragraph : javax.swing.text.DefaultEditorKit$BeginParagraphAction&lt;br /&gt;
            caret-begin-word : javax.swing.text.DefaultEditorKit$BeginWordAction&lt;br /&gt;
                  caret-down : javax.swing.text.DefaultEditorKit$NextVisualPositionAction&lt;br /&gt;
                   caret-end : javax.swing.text.DefaultEditorKit$EndAction&lt;br /&gt;
              caret-end-line : javax.swing.text.DefaultEditorKit$EndLineAction&lt;br /&gt;
         caret-end-paragraph : javax.swing.text.DefaultEditorKit$EndParagraphAction&lt;br /&gt;
              caret-end-word : javax.swing.text.DefaultEditorKit$EndWordAction&lt;br /&gt;
               caret-forward : javax.swing.text.DefaultEditorKit$NextVisualPositionAction&lt;br /&gt;
             caret-next-word : javax.swing.text.DefaultEditorKit$NextWordAction&lt;br /&gt;
         caret-previous-word : javax.swing.text.DefaultEditorKit$PreviousWordAction&lt;br /&gt;
                    caret-up : javax.swing.text.DefaultEditorKit$NextVisualPositionAction&lt;br /&gt;
           copy-to-clipboard : javax.swing.text.DefaultEditorKit$CopyAction&lt;br /&gt;
            cut-to-clipboard : javax.swing.text.DefaultEditorKit$CutAction&lt;br /&gt;
               default-typed : javax.swing.text.DefaultEditorKit$DefaultKeyTypedAction&lt;br /&gt;
                 delete-next : javax.swing.text.DefaultEditorKit$DeleteNextCharAction&lt;br /&gt;
             delete-previous : javax.swing.text.DefaultEditorKit$DeletePrevCharAction&lt;br /&gt;
                  dump-model : javax.swing.text.DefaultEditorKit$DumpModelAction&lt;br /&gt;
                insert-break : javax.swing.text.DefaultEditorKit$InsertBreakAction&lt;br /&gt;
              insert-content : javax.swing.text.DefaultEditorKit$InsertContentAction&lt;br /&gt;
                  insert-tab : javax.swing.text.DefaultEditorKit$InsertTabAction&lt;br /&gt;
                   page-down : javax.swing.text.DefaultEditorKit$VerticalPageAction&lt;br /&gt;
                     page-up : javax.swing.text.DefaultEditorKit$VerticalPageAction&lt;br /&gt;
        paste-from-clipboard : javax.swing.text.DefaultEditorKit$PasteAction&lt;br /&gt;
                  select-all : javax.swing.text.DefaultEditorKit$SelectAllAction&lt;br /&gt;
                 select-line : javax.swing.text.DefaultEditorKit$SelectLineAction&lt;br /&gt;
            select-paragraph : javax.swing.text.DefaultEditorKit$SelectParagraphAction&lt;br /&gt;
                 select-word : javax.swing.text.DefaultEditorKit$SelectWordAction&lt;br /&gt;
          selection-backward : javax.swing.text.DefaultEditorKit$NextVisualPositionAction&lt;br /&gt;
             selection-begin : javax.swing.text.DefaultEditorKit$BeginAction&lt;br /&gt;
        selection-begin-line : javax.swing.text.DefaultEditorKit$BeginLineAction&lt;br /&gt;
   selection-begin-paragraph : javax.swing.text.DefaultEditorKit$BeginParagraphAction&lt;br /&gt;
        selection-begin-word : javax.swing.text.DefaultEditorKit$BeginWordAction&lt;br /&gt;
              selection-down : javax.swing.text.DefaultEditorKit$NextVisualPositionAction&lt;br /&gt;
               selection-end : javax.swing.text.DefaultEditorKit$EndAction&lt;br /&gt;
          selection-end-line : javax.swing.text.DefaultEditorKit$EndLineAction&lt;br /&gt;
     selection-end-paragraph : javax.swing.text.DefaultEditorKit$EndParagraphAction&lt;br /&gt;
          selection-end-word : javax.swing.text.DefaultEditorKit$EndWordAction&lt;br /&gt;
           selection-forward : javax.swing.text.DefaultEditorKit$NextVisualPositionAction&lt;br /&gt;
         selection-next-word : javax.swing.text.DefaultEditorKit$NextWordAction&lt;br /&gt;
         selection-page-down : javax.swing.text.DefaultEditorKit$VerticalPageAction&lt;br /&gt;
         selection-page-left : javax.swing.text.DefaultEditorKit$PageAction&lt;br /&gt;
        selection-page-right : javax.swing.text.DefaultEditorKit$PageAction&lt;br /&gt;
           selection-page-up : javax.swing.text.DefaultEditorKit$VerticalPageAction&lt;br /&gt;
     selection-previous-word : javax.swing.text.DefaultEditorKit$PreviousWordAction&lt;br /&gt;
                selection-up : javax.swing.text.DefaultEditorKit$NextVisualPositionAction&lt;br /&gt;
               set-read-only : javax.swing.text.DefaultEditorKit$ReadOnlyAction&lt;br /&gt;
                set-writable : javax.swing.text.DefaultEditorKit$WritableAction&lt;br /&gt;
 toggle-componentOrientation : javax.swing.text.DefaultEditorKit$ToggleComponentOrientationAction&lt;br /&gt;
                    unselect : javax.swing.text.DefaultEditorKit$UnselectAction&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>