//java24hours p164.后面的注释是我自己写的,请帮我看看我的理解是否错误。
//后面附带了几个相关问题,希望得到指导。能帮我重新注释一下更好。
packge com.java24hours;//创建了包
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;//调用几个类。为什么调用这几个?有什么用?
public class KeyViewer extends JFrame implements KeyListener { //类的继承。这句什么用?
JTextField keyText = new JTextField(80);
JLable keyLable = new JLabel("Press any key in the text field.");
//创建文本框和标签。
public KeyViewer(){ //新建类。有什么用?
super("KeyViewer"); //从超类继承?不懂。
setLookAndFeel(); //调用swing包中UIManager类的方法设置外观。
setSize(350,100); //设置大小
setDefaultCloseOperation(JFrame .EXIT_ON_CLOSE);//关闭图形用户界面时,关闭程序。
keyText.addKeyListener(this); //不理解
BorderLayout bord = new BorderLayout();//创建新对象,设置组件中容器位置。
setLayout(bord);
add(keyLable,BorderLayout.NORTH);//不理解。
add(keyText,BorderLayout.CENTER);
setVisible(true); //使图形用户界面可见。
}
public void keyTyped(KeyEvent input) { //不理解。
char key = input.getKeyChar(); //获得键盘输入的字符。
keyLable.setText("You pressed " + key);//设置标签文本。
}
public void keyPressed(KeyEvent txt) { //括号中是什么意思?
//do nothing
}
public void keyReleased(KeyEvent txt) {
//do nothing
}
private void setLookAndFeel(){ //此句什么意思?
try{
UIManager.setLookAndFeel(
"com.sun.java.swing.plaf.nimbusLookAndFeel"
);
}catch (Exception exc) {
//ignore error
} //try catch 调试。
}
public static void main(String[] arguments){ //程序入口。
KeyViewer frame = new KeyViewer(); //新建对象。但是此步执行完之后程序执行哪一步呢?
}
} //最后总述一下。我不理解程序的结构,从哪一步到哪一步,各部分之间的关系,希望能得到前辈指导。
慕粉2132219660