我正在尝试更改文本区域中使用单选按钮的字体大小以及字体样式的复选框中的文本。我不知道如何在文本区域显示文本,请看最后两行。显示文本区域中的选定选项
package assignment3;
import java.awt.Font;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import javax.swing.ButtonGroup;
import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTextArea;
public class Assignment3 extends JFrame implements ItemListener {
JPanel panel;
JTextArea area;
JRadioButton small;
JRadioButton medium;
JRadioButton large;
ButtonGroup btngrp;
JCheckBox bold;
JCheckBox italic;
JCheckBox underline;
Font smalla;
Font med;
Font la;
Font b;
Font i;
Font u;
public Assignment3() {
setTitle("My Work of text");
setSize(400, 400);
panel = new JPanel();
area = new JTextArea(5, 20);
btngrp = new ButtonGroup();
btngrp.add(small);
btngrp.add(medium);
btngrp.add(large);
small = new JRadioButton("Small");
medium = new JRadioButton("Medium");
large = new JRadioButton("Large");
bold = new JCheckBox("Bold");
italic = new JCheckBox("Italic");
underline = new JCheckBox("Underline");
smalla = new Font("Rockwell", Font.PLAIN, 12);
med = new Font("Rockwell", Font.PLAIN, 15);
la = new Font("Rockwell", Font.PLAIN, 20);
b = new Font("Rockwell", Font.BOLD, 12);
i = new Font("Rockwell", Font.ITALIC, 15);
u = new Font("Rockwell", Font.ROMAN_BASELINE, 20);
add(panel);
panel.add(area);
panel.add(small);
panel.add(medium);
panel.add(large);
panel.add(bold);
panel.add(italic);
panel.add(underline);
small.addItemListener(this);
medium.addItemListener(this);
large.addItemListener(this);
bold.addItemListener(this);
underline.addItemListener(this);
italic.addItemListener(this);
}
public static void main(String[] args) {
new Assignment3().setVisible(true);
}
public void itemStateChanged(ItemEvent ie) {
int style = 0;
int size = 12;
if (small.isSelected()) {
size = 12; /*area.setFont(smalla);*/
} else if (medium.isSelected()) {
size = 14; /*area.setFont(med);*/
} else if (large.isSelected()) {
size = 20; /*area.setFont(la);*/
}
if (bold.isSelected()) {
style += Font.BOLD
/*area.setFont(new Font(Font.SANS_SERIF, style,
style))*/
;
}
if (italic.isSelected()) {
style += Font.ITALIC /*area.setFont(new Font(Font.SANS_SERIF, style, style))*/ ;
}
if (underline.isSelected()) {
style += Font.CENTER_BASELINE /*area.setFont(new Font(Font.SANS_SERIF, style, style))*/ ;
}
area.setFont(new Font(size + style); area.setFont(style + size);
}
}
的目的是改变文本区域的字体样式 – 2014-09-23 20:28:08