问答题

请完成下列Java程序:记录鼠标在窗口中的信息,包括鼠标的移动事件以及鼠标在窗口中的位置坐标,要求在窗口下方显示鼠标的事件和位置信息,以及在窗口上方有按钮控制程序的正常退出。
注意:请勿改动main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。
程序运行结果如下:


import java.awt.*;
import java.awt.event.*;
public class ex7_2 extends Frame implements MouseMotionListener,ActionListener
private Labe1 1;
private String str=" ";
public static void main(String[] arg)
new ex7_2();
ex7_2 ()
________________;
setSize(200,200);
Button btn=new Button("exit");
btn.addActionListener(this);
add(btn,"North");
1=new Labe1(str);
add(1,"South");
show();
public void mouseMoved(MouseEvent event)
str="Move: " +_____________;
1. setText (str);
public void mouseDragged(MouseEvent event)
public void actionPerformed(ActionEvent event)
if(event.getActionCommand().equals(,,exit,,))
System.exit(0);


【参考答案】

addMouseMotionListener(this)
event.getPoint()
热门 试题

问答题
下面Applet程序,其功能是实现一个计数器,每隔0.15秒计数器数值加1,数值动态变化,并且能够控制计数器的暂停和继续。要求通过使用swing的构件建立图形用户界面,主要包括一个文本区域,用于显示计数器结果;两个按钮,一个使计数器暂停,一个使计数器继续工作。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行或删行。 程序运行结果如下: import javax.swing.*; import java.awt.*; import java.awt.event.*; * <applet code= ex7_3.class width=800 height=400 > < applet> * public class ex7_3 extends JApplet private JTextField jtf = new JTextField(15); private JButton Hold = new JButton( Hold ),resume = new JButton( Resume ); private ex7_3th obj7_3th = new ex7_3th(); class ex7_3th extends Thread private int cnt = 0; private boolean bIsHold = false; public ex7_3th() start(); public void hold() bIsHold = true; public synchronized void fauxResume() bIsHold = false; wait(); public void run() while (true) try sleep(150); synchronized(this) while (bIsHold) not i fy ( ); catch(InterruptedException ie) System.err.println( Interrupted ); jtf.setText(cnt); public void init() Container cp = getContentPane(); cp.setLayout(new FlowLayout()); cp.add(jtf); Hold.addActionListener( new ActionListener() public void actionPerformed(ActionEvent ae) obj7_3th.hold(); ); cp.add(Hold); resume.addActionListener( new ActionListener() public void actionPerformed(ActionEvent e) obj7_3th.fauxResume(); ); cp.add(resume); public static void main(String[] args) ex7_3 obj7_3=new ex7_3(); String str= obi7_3.getClass().toString(); if(str.indexOf( class ) != -1) str= str.substring(6); JFrame frm = new JFrame(str); frm.addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent we) System.exit(O); ); frm.getContentPane().add(obj7_3); frm.setSize(300, 200); obj7_3.init(); obi7_3.start(); frm.setVisible(true); ex7_3.html <HTML> <HEAD> <TITLE>ex7_3< TITLE> < HEAD> <BODY> <applet code= ex7_3.class width=800 height=400> < applet> < BODY> < HTML>