2.实现KeyListener接口时,也要想线程一样要添加监听事件,否则是不能实现的!与之不同的是,线程只需要添加实现过程的类,而在KeyListener中,不仅要在主面板中添加监听实现过程的类,还要对类本身添加自己的监听事件,这是由Java本身的一些缺陷造成的,这个缺陷最早是由王洋老师告诉我的!
3.无论是实现线程Thread接口还是KeyListener接口,都要通过repaint()函数来重画。
4.如果想在JFrame中去掉标题栏,则可以在构造函数初始化的时候加上this.setUndecorated(true),这样可以实现类似JWindow的效果,有一点很重要的是这句一定要写在this.setVisible(true)之前,否则不但不能实现JWindow的效果,而且还会让主类中设置的其它属性不能显示,因此一定要写在设置可见性的前面。
5.如果只想要一个关闭按钮,而不要最大化和最小化的按钮,则可以在主类中继承JDialog类,这样就只有一个叉了,不过要在默认的关闭中设置为:this.setDefaultCloseOperation(Dispose_ON_CLOSE)或者this.setDefaultCloseOperation(HIDE_ON_CLOSE)。其它的如EXIT_ON_CLOSE或者DO_NOTHING_ON_CLOSE实际上在运行的时候并不能起到作用。