助けてください...現在、私は自分自身でJavaを学習しています。私の目標は、テキストエディタを作成し、StyledEditorKitで選択したテキストのテキストスタイルを変更することです。私はJTextAreaでStyledEditorKitを使う方法を読んだ。 JMenuItemsでJMenuを作成しました。アクションBoldActionとItalicActionを割り当てますが、テキストプロパティは変更されません。私が間違っていることがあります...私のコードはここにありますJTextAreaのフォントスタイルを変更するには、StyledEditorKit.BoldAction()メソッドでボタンにアクションを設定してください。
import java.awt.*;
import javax.swing.*;
import javax.swing.text.*;
public class StyledEditorKit_Prueba {
public static void main(String[] args) {
EditorFrame myFrame= new EditorFrame();
myFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
class EditorFrame extends JFrame{
public EditorFrame(){
setBounds(500,200,500,350);
setResizable(false);
setTitle(" StyledEditorKit Use");
EditorPanel myPanel= new EditorPanel();
add(myPanel);
setVisible(true);
}
}
class EditorPanel extends JPanel{
public EditorPanel(){
setLayout(new BorderLayout());
miAreaT= new JTextArea();
add(miAreaT, BorderLayout.CENTER);
//_______________________________________
JPanel panelBarMenu= new JPanel();
JMenuBar barMenu= new JMenuBar();
menu= new JMenu("Change Style");
//___________________________________________________
JMenuItem bold= new JMenuItem("Bold");
JMenuItem italic= new JMenuItem("Italic");
bold.addActionListener(new StyledEditorKit.BoldAction());
italic.addActionListener(new StyledEditorKit.ItalicAction());
//---------------------------------------------------
menu.add(bold);
menu.addSeparator();
menu.add(italic);
barMenu.add(menu);
panelBarMenu.add(barMenu);
add(panelBarMenu, BorderLayout.NORTH);
//----------------------------------------------------
}
private JTextArea miAreaT;
private JMenu menu;
}
これらのタイプのエディタキットは、JTextAreaが使用しているように、スタイル付きドキュメントを使用するテキストコンポーネントではなく、プレーンドキュメントで使用されると考えました。 –