0

I am working on a Java Swing application (JDK 7). I have two JEditorPane instances on two different JFrames, that I need to synchronize. I know the hard way of force copying contents on a modified event is one way to do it. But, I was wondering if there is a smarter/easier way to do this. I tried to use the same JEditorPane instances on both the frames, but that did not work.

I believe a reference to the container panel is included in the JEditorPane instance, so the old container is erased when it is added to a new container. Can we create a new subclass of JEditorPane, that can accommodate two containers?

Have you tried something like this before?

mKorbel
  • 109,525
  • 20
  • 134
  • 319
Vikas
  • 626
  • 1
  • 10
  • 22

1 Answers1

3

Use 2 instances of JEditorPane. Set them the same EditorKit and then use Document from the first one in the second.

editorPane2.setDocument(editorPane1.getDocument());

Document is a model in fact and you can share the same model between 2 components.

StanislavL
  • 56,971
  • 9
  • 68
  • 98