使用Java设置一个文本编辑器的字体大小字号颜色
时间: 2024-03-23 18:42:24 浏览: 75
用Java语言设置字体的格式
好的,下面是使用Java设置文本编辑器字体大小、字号和颜色的示例代码:
```java
import javax.swing.*;
import java.awt.*;
public class TextEditor extends JFrame {
private JTextArea textArea;
public TextEditor() {
// 创建一个新的 JFrame 窗口
setTitle("文本编辑器");
setDefaultCloseOperation(EXIT_ON_CLOSE);
setSize(600, 400);
setLocationRelativeTo(null);
// 创建一个新的 JTextArea 文本区域,并将其添加到 JFrame 窗口中
textArea = new JTextArea();
add(new JScrollPane(textArea));
// 创建一个新的菜单栏,并将其添加到 JFrame 窗口中
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
// 创建一个新的菜单,并将其添加到菜单栏中
JMenu formatMenu = new JMenu("格式");
menuBar.add(formatMenu);
// 创建一个新的菜单项,并将其添加到菜单中
JMenuItem fontMenuItem = new JMenuItem("字体");
formatMenu.add(fontMenuItem);
// 添加字体菜单项的监听器
fontMenuItem.addActionListener(e -> {
Font currentFont = textArea.getFont();
Font newFont = JFontChooser.showDialog(this, "选择字体", currentFont);
if (newFont != null) {
textArea.setFont(newFont);
}
});
// 创建一个新的工具栏,并将其添加到 JFrame 窗口中
JToolBar toolBar = new JToolBar();
add(toolBar, BorderLayout.NORTH);
// 创建一个新的字体大小下拉框,并将其添加到工具栏中
Integer[] fontSizes = {8, 9, 10, 11, 12, 14, 16, 18, 20, 22, 24, 26, 28, 36, 48, 72};
JComboBox<Integer> fontSizeBox = new JComboBox<>(fontSizes);
fontSizeBox.setSelectedItem(currentFont.getSize());
toolBar.add(fontSizeBox);
// 添加字体大小下拉框的监听器
fontSizeBox.addActionListener(e -> {
int fontSize = (Integer) fontSizeBox.getSelectedItem();
Font currentFont = textArea.getFont();
Font newFont = new Font(currentFont.getName(), currentFont.getStyle(), fontSize);
textArea.setFont(newFont);
});
// 创建一个新的字体颜色按钮,并将其添加到工具栏中
JButton fontColorButton = new JButton("字体颜色");
toolBar.add(fontColorButton);
// 添加字体颜色按钮的监听器
fontColorButton.addActionListener(e -> {
Color currentColor = textArea.getForeground();
Color newColor = JColorChooser.showDialog(this, "选择字体颜色", currentColor);
if (newColor != null) {
textArea.setForeground(newColor);
}
});
}
public static void main(String[] args) {
TextEditor editor = new TextEditor();
editor.setVisible(true);
}
}
```
在上面的代码中,我们首先创建了一个新的 JFrame 窗口,并将一个 JTextArea 文本区域添加到其中。然后,我们创建了一个新的菜单栏和菜单,以及一个名为“字体”的菜单项。当用户点击“字体”菜单项时,我们使用 JFontChooser 显示了一个字体选择器对话框,让用户选择新的字体。然后,我们根据用户的选择更新了 JTextArea 的字体。
接下来,我们创建了一个新的工具栏,并添加了一个字体大小下拉框和一个字体颜色按钮。当用户选择新的字体大小或颜色时,我们同样根据用户的选择更新了 JTextArea 的字体大小或颜色。
需要注意的是,上面的代码中引用了一些第三方库,如 JFontChooser 和 JColorChooser。这些库可以方便地提供字体选择器和颜色选择器对话框,使得我们的代码更加简洁和易读。如果您想要使用这些库,需要先在项目中引入相关的 jar 包。
阅读全文