现在,我们将toolBar.setBackground(Color.white)改为toolBar.setBorder(border),立体效果是不是已经出现了? 实战——写上自己的大名 现在我们已经有了一个能够运行的界面了,虽然它什么也做不了,但是请你别慌,罗马不是一天建成的。 现在让我们在菜单区提供一个“关于”菜单,用来显示程序的信息,难道你不想让别人知道你的大名吗?Swing本身就提供了现成的按钮控件JButton,我们只需要创建一个新的按钮:JButton about = new JButton("关于");这个按钮该怎么放到菜单区而不是别的地方呢?我们可以加入下面的代码:toolBar.add(about);咦,怎么点按钮没有反应?这是因为你还没有告诉程序点击按钮时要做什么事情呢。要为按钮添加事件响应,首先需要使用about.addActionListener(this)来告诉程序监听按钮按下时的事件,由于ActionListener是一个程序接口,因此,我们在类的申明的地方也得做一点小小的修改:public class KyodaiUI extends JFrame implements ActionListener {...}实现ActionListener接口是为了告诉程序我要进行事件处理了。当然,最后我们得添加响应事件的代码: public void actionPerformed(ActionEvent e) { if (e.getSource() == about) { JOptionPane.showMessageDialog(this, "我的大名", "关于", JOptionPane.INFORMATION_MESSAGE); return ; } } 其中,e.getSource() 表示当前触发事件的控件,由于我们的程序中往往会有多个以上的控件,这些控件都有可能产生事件,所以我们必须使用这个方法来找到产生事情的控件。 小结 让我们一起来回顾一下今天所学的内容:首先我们了解了顶层容器,也知道了控件分为容器控件和非容器控件,同时还知道使用边框,最后,我们还小小的处理了一下按钮的事件。 学而时习之,不亦说乎,就让我留点小小的作业,帮助大家巩固一下今天所学的内容:上面我们添加的按钮在菜单栏的中间,并不美观,请大家放到左边或右边试试。 最后向大家提供一些比较好的参考资料: ●Creating a GUI with JFC/Swing http://java.sun.com/docs/books/tutorial/uiswing/index.html ●2D Graphics http://java.sun.com/docs/books/tutorial/2d/index.html ●JDK API http://java.sun.com/j2se/1.4.2/docs/api/index.html |