想要通过使用 StyledEditorKit.BoldAction() 方法将操作设置为按钮来更改 JTextArea 中的字体样式

Want to change font style in JTextArea by setting an action to a button with StyledEditorKit.BoldAction() method

请帮忙...目前我正在自学Java。我的目标是创建一个文本编辑器,并有可能使用 StyledEditorKit 更改所选文本的文本样式。我已经阅读了如何将 StyledEditorKit 与 JTextArea 一起使用。使用 JMenuItems 创建 JMenu。分配 Actions BoldAction 和 ItalicAction,但文本 属性 没有改变。我做错了什么......这是我的代码

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 不支持粗体或斜体文本。

您需要使用 JTextPane 来支持风格化文本。

阅读有关 Text Component Features 的 Swing 教程部分,了解更多信息和可以满足您需要的工作示例。