swing-如何通过工具包getAction的方法让两个文本框的字体属性一致

swing中用工具包toolbar 的 getAction操作来设置一个JTextPane文本域的字体的加粗斜体下划线等属性,

private Hashtable actionTable=new Hashtable();
JToolBar toolbar=new JToolBar():

private String[] styleActionNames=new string[]{
"font-italic""斜体”,"D:/text/斜体.png",
"font-bold","加粗","D:/texe/加相.png",
" font-underline",”下划线”, ”D:/tex4/下划线.png"
};
private string[]sizeActionNames=new string []{
"font-size一8”,”8”,
"font-size-10","10",
"font-size-12”,"12",
" font-size-14”,"14",
"font-size-16","16",
"font-size-18","18",
"font-size-21",”"24",
"font-size-36”,"36",
"font-size-48”, "48”,);

public Demo5(){
loadActionTable();
populate();
}
JMenu editMenu =new JMenu("文字设置);
JMenu fontMenu=new JMenu("文字样式"),
JMenu styleMenu=new JMenu(“格式"),
JMenu sizeMenu-new JMenu(”大小“);
public void populate(){
for(int i=0;i<sizeActionNames.iength:++i){
Action action=getAction (sizeActioniNames [a1)Eif(action !=null)
JMenuItemitem—sizeMenu . add (action) ;item.setText(3izeActionNames[++i]):}

editMenu. addseparator();toolbar.addseparator(O;
for(int i=0;i<styleActionNames .iength:++i)t
Action action=getAction (styleActionNames [i1);if(action !-nul1){
JButton button-tooibaz-add (action):JMenuItem item-sty1eHenu.add (action) ;
item.setText(seyieAetionNames[++iJ力3button.setText (null);
button.setIcon (new ImageIaon(sev1eActionNames [++i])):
}
private void loadActionTable( {
Action[] actions=textPane.getActions ():for(int i=0; i<actions. length;++i){
actionTable.put (actions[i1.getValue (Action. NAME), actions)
private Action getAction (String name)
return (Action) actionTable.get (name) ;}

img

img
右边那个小文本域是缩略图,我可以用监听做textPane和缩略图文字同步,但是文字属性不知道怎么同步,用keylistener和documentlistener监听然后setFont(textpane.getFont)试过了没用,在控制台打印了一下textpane的Font属性,显示用工具包设置之前之后都是(“DIalog”,"Dialog","plain",12),但是显示出来确实可以加粗斜体,请问还有什么办法可以让工具包设置两边字体属性同步