问答题

本程序的功能是监听键盘敲击事件,并将敲击的字符显示在标签上。起始,文字标签提示“Please press your keyboard!”,当你按下键盘上的字符键时,文字标签就变为“"X"ispressed!”(X代表用户按下的键所代表的字符),如图所示。


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class exam_27 extends Frame ______{
public static void main(String args[]){
exam_27 f=new exam_27("exam_27");
Panel pan=new Panel();
f.init();
}
public exam_27(String str){
super(str);
}
public void init(){
addWindowListener (new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
setSize(200,200);
setLayout(new FlowLayout());
lab=new Label("Please press your keyboard!");
add(lab);
addKeyListener(this);
setVisible(true);
}
public void keyTyped(KeyEvent e){
lab.setText("""+______+"" is pressed!");
repaint();
}
public void keyPressed(KeyEvent e){
}
public void keyReleased(KeyEvent e) {
}
private Label lab;
}

【参考答案】

第1处:implements KeyListener
第2处:e.getKeyChar()
热门 试题

问答题
本程序的功能是通过单选按钮来控制面板的边框显示风格。窗口中有6个单选按钮,分别代表不同的边框显示的风格,选中任意一个按钮,边框的风格变显示为选中按钮所对应的风格,如图所示。import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.border.*;public class exam_29{public static void main(String[] args){BorderFrame frame=new BorderFrame();frame.setDefaultClcseOperation(JFrame.EXIT_ON_CLOSE);frame.show();}}class BorderFrame extends JFrame{public BorderFrame(){setTitle( exam_29 );setSize(WIDTH, HEIGHT);Container contentPane=getContentPane();buttonPanel=new JPanel();group=new ButtonGroup();addRadioButton( 低斜面边界 ,BorderFactory.createLoweredBevelBorder());addRadioButton( 凸斜面边界 ,BorderFactory.createRaisedBevelBorder());addRadioButton( 蚀刻边界 ,BorderFactory.createEtchedBorder());addRadioButton( 直线边界 ,BorderFactory.createLineBorder(Color.blue));addRadioButton( 不光滑边界 ,BorderFactory.createMatteBorder(5, 5, 5, 5, Color.yellow));addRadioButton( 空边界 ,BorderFactory.createEmptyBorder());Border border=BorderFactory.createEmptyBorder();Border titled=BorderFactory.createTitledBorder(border, Border types );buttonPanel.setBorder(______);contentPane.add(buttonPanel);}public void addRadioButton(String buttonName, final Border b){JRadioButton button=new JRadioButton(buttonName);button.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent event){Border titled=BorderFactory.createTitledBorder(b, Border types );buttonPanel.setBorder(titled);______;}});group.add(button);buttonPanel.add(button);}public static final int WIDTH=600;public static final int HEIGHT=200;private JPanel buttonPanel;private ButtonGroup group;}