顶者给分,判断鼠标左键是否被一直按下,比如当左键按下时执行 i++, 释放时停止计算,大家能做到吗?
一个面试题

解决方案 »

  1.   

    我一直觉得 你是小熊猫的 马甲...
                  mouseListener 不就行了. 然后在响应事件里面执行i++
      

  2.   

    用一个比较比较笨的方式,当mousePressed时,判断是否为鼠标左键。
    如果是,记录下来,一个flag,在flag为true时,一直执行 i++,当mouseReleased时,判断是否是鼠标左键,
    如果是,则flag为false,停止计算。
    import java.awt.event.MouseEvent;
    import java.awt.event.MouseListener;
    import javax.swing.JFrame;/**
     * @author bzwm
     *
     */
    public class C extends JFrame implements MouseListener{ private boolean pressed = false;

    private int count = 0;
    public C(){
    this.setSize(300, 200);
    this.setVisible(true);
    this.addMouseListener(this);
    new Thread(new Runnable(){
    public void run() {
    // TODO Auto-generated method stub
    add();
    }
    }).start();
    }
    /* (non-Javadoc)
     * @see java.awt.event.MouseListener#mouseClicked(java.awt.event.MouseEvent)
     */
    public void mouseClicked(MouseEvent e) {
    // TODO Auto-generated method stub
    } /* (non-Javadoc)
     * @see java.awt.event.MouseListener#mouseEntered(java.awt.event.MouseEvent)
     */
    public void mouseEntered(MouseEvent e) {
    // TODO Auto-generated method stub

    } /* (non-Javadoc)
     * @see java.awt.event.MouseListener#mouseExited(java.awt.event.MouseEvent)
     */
    public void mouseExited(MouseEvent e) {
    // TODO Auto-generated method stub

    } /* (non-Javadoc)
     * @see java.awt.event.MouseListener#mousePressed(java.awt.event.MouseEvent)
     */
    public void mousePressed(MouseEvent e) {
    if(e.getButton() == 1){
    pressed = true;
    }
    }

    private void add(){
    while(true){
    if(pressed)
    count++;
    }
    } /* (non-Javadoc)
     * @see java.awt.event.MouseListener#mouseReleased(java.awt.event.MouseEvent)
     */
    public void mouseReleased(MouseEvent e) {
    // TODO Auto-generated method stub
    if(e.getButton() == 1){
    pressed = false;
    System.out.println(count);
    }
    }

    public static void main(String args[]){
    new C();
    }
    }
      

  3.   

    就用MouseListener接口中的mousePress就可以啊.....有什么问题吗????????
    还是有特殊的时间要求...