Синхронизируйте содержимое JEditorPane между двумя JFrames

Я работаю над приложением Java Swing (JDK 7). У меня есть два экземпляра JEditorPane на двух разных JFrames, которые мне нужно синхронизировать. Я знаю, что трудный способ принудительного копирования содержимого измененного события - это один из способов сделать это. Но мне было интересно, есть ли более умный/простой способ сделать это. Я пытался использовать одни и те же экземпляры JEditorPane в обоих фреймах, но это не сработало.

Я считаю, что ссылка на панель контейнера включена в экземпляр JEditorPane, поэтому старый контейнер стирается при добавлении в новый контейнер. Можем ли мы создать новый подкласс JEditorPane, который может вместить два контейнера?

Вы пробовали что-то подобное раньше?


person Vikas    schedule 04.01.2014    source источник
comment


Ответы (1)


Используйте 2 экземпляра JEditorPane. Установите им одинаковые EditorKit и затем используйте Document из первого во втором.

editorPane2.setDocument(editorPane1.getDocument());

Document на самом деле является моделью, и вы можете использовать одну и ту же модель между двумя компонентами.

person StanislavL    schedule 04.01.2014