请完成下列Java程序:记录鼠标在窗口中的信息,包括鼠标的移动事件以及鼠标在窗口中的位置坐标,要求在窗口下方显示鼠标的事件和位置信息,在窗口上方有按钮控制程序的正常退出。 注意:请勿改动main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。 源程序文件代码清单如下: import java.awt.*; import java.awt.event.*; public class ex12_2 extends Frame implements MouseMotionListener, ActionListener { private Label 1; private String str=" "; public static void main(String args[]) { new ex12_2(); } ex12_2( ) { ______; setSize(200,200); Button btn=new Button("exit"); btn.addActionListener (this); add (btn, "North" ); l=new Label(str); add (l, "South" ); show (); } public void mouseMoved(MouseEvent event) { str="Move: "+ l. setText (str); } public void mouseDragged(MouseEvent event) { } public void actionPerformed(ActionEvent event) { if(event.getActionCommand().equals("exit")) { System.exit(0); } } }
参考答案:
解析:addMouseMotionListener(this)event.getPoint() 本题主要考查鼠标移动事件监听和基本的AWT构件。解题关键是熟悉鼠标移动事件监听器的注册,和对鼠标移动事件的处理。本题中,第1个空,注册鼠标移动事件的监听器,注意参数是this,表示在当前运行的对象中注册该监听器:第2个空,通过调用MouseEvent的getPoint()方法获得鼠标的坐标信息。程序运行结果如下。