请完善程序(程序文件名:Java_2.java)并进行调试。请在下画线处填入正确内容,然后删除下画线。请勿删除注释行和其他已有的语句内容。
[题目要求]
完善程序,使程序运行结果如下图所示。
源程序:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Java_2 {
public static void main(String[] args) {
RadioButtonFrame frame=new RadioButtonFrame();
frame.setDefauhCloseOperation(JFrame.EXIT_ON_CLOSE);
(1) ;
}
}
class RadioButtonFrame extends JFrame {
public RadioButtonFrame() {
setTitle("Radio按钮实例");
setSize(DEFAULT_WIDTH,DEFAULT_HEIGHT);
Container contentPane=getContentPane();
label=new JLabel("热烈庆祝Java程序语言开考三周年");
label.setForeground(Color.yellow);
contentPane.setBackground(Color.red);
label.setFont(new Font("黑体",Font.PLAIN,DEFAULT_SIZE));
contentPane.add(label,BorderLayout.CENTER);
buttonPanel=new JPanel();
group=new ButtonGroup();
addRadioButton("小",8);
addRadioButton("中",12);
addRadioButton("大",18);
addRadioButton("特大",30);
contentPane.add(buttonPanel,BorderLayout.SOUTH);
}
public void addRadioButton(String name,final int size) {
boolean selected=size==DEFAULT_SIZE:
JRadioButton button=new (2) (name,selected);
group.add(button);
buttonPanel.add(button);
ActionListener listener=new Action Listener() {
public void actionPerformed( (3) evt){
label.setFont(new Font("黑体",Font.PLAIN,size));
}
};
button.addActionListener( (4) );
}
public static final int DEFAULT_WIDTH=340;
public static final int DEFAULT_HEIGHT=200:
private JPanel buttonPanel;
private ButtonGroup group;
private JLabel label;
private static final int DEFAULT_SIZE=12;
}
参考答案:listener
解析: 因为单击了单选按钮以后字体发生了改变,所以需要对JRadioButton对象button注册监听器,程序中已经定义了事件监听器listener,所以此处应该是listener。 [程序解析] 程序在图形用户界面的窗口中采用单选按钮调整字体的大小。对单项按钮需要添加事件监听器,也涉及修改事件的处理程序。考试中经常考查监听器分窗口事件监听器接口WindowListener和动作事件监听器接口ActionListener两种,其中前者对应的事件为WindowsEvent,后者对应的事件为ActionEvent,前者的方法通常为windowClosing(),windowClosed()等,后者的方法主要有actionPerformed()。