友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!阅读过程发现任何错误请告诉我们,谢谢!! 报告错误
狗狗书籍 返回本书目录 我的书架 我的书签 TXT全本下载 进入书吧 加入书签

Java编程思想第4版[中文版](PDF格式)-第194章

按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!




    g。fillRect(0; 0; s。width; s。height);  

    g。setColor(Color。black);  



                                                                                             444 


…………………………………………………………Page 446……………………………………………………………

    display。show(g);  

  }  

  public void processEvent(AWTEvent e) {  

    display。evnt'Display。EVENT'= e。toString();  

    repaint();  

    super。processEvent(e);  

  }  

  public void  

  processponentEvent(ponentEvent e) {  

    switch(e。getID()) {  

      case ponentEvent。PONENT_MOVED:  

        display。evnt'Display。PONENT' =   

          〃ponent moved〃;  

        break;  

      case ponentEvent。PONENT_RESIZED:  

        display。evnt'Display。PONENT' =   

          〃ponent resized〃;  

        break;  

      case ponentEvent。PONENT_HIDDEN:  

        display。evnt'Display。PONENT' =   

          〃ponent hidden〃;  

        break;  

      case ponentEvent。PONENT_SHOWN:  

        display。evnt'Display。PONENT' =   

          〃ponent shown〃;  

        break;  

      default:  

    }  

    repaint();  

    // Must always remember to call the 〃super〃  

    // version of whatever you override:  

    super。processponentEvent(e);  

  }  

  public void processFocusEvent(FocusEvent e) {  

    switch(e。getID()) {  

      case FocusEvent。FOCUS_GAINED:  

        display。evnt'Display。FOCUS' =   

          〃FOCUS gained〃;  

        break;  

      case FocusEvent。FOCUS_LOST:  

        display。evnt'Display。FOCUS' =   

          〃FOCUS lost〃;  

        break;  

      default:  

    }  

    repaint();  

    super。processFocusEvent(e);  

  }  

  public void processKeyEvent(KeyEvent e) {  

    switch(e。getID()) {  

      case KeyEvent。KEY_PRESSED:  

        display。evnt'Display。KEY' =   



                                                                                        445 


…………………………………………………………Page 447……………………………………………………………

          〃KEY pressed: 〃;   

        break;  

      case KeyEvent。KEY_RELEASED:  

        display。evnt'Display。KEY' =   

          〃KEY released: 〃;   

        break;  

      case KeyEvent。KEY_TYPED:  

        display。evnt'Display。KEY' =   

          〃KEY typed: 〃;  

        break;  

      default:  

    }  

    int code = e。getKeyCode();  

    display。evnt'Display。KEY' +=   

      KeyEvent。getKeyText(code);  

    repaint();  

    super。processKeyEvent(e);  

  }  

  public void processMouseEvent(MouseEvent e) {  

    switch(e。getID()) {  

      case MouseEvent。MOUSE_CLICKED:  

        requestFocus(); // Get FOCUS on click  

        display。evnt'Display。MOUSE' =   

          〃MOUSE clicked〃;  

        break;  

      case MouseEvent。MOUSE_PRESSED:  

        display。evnt'Display。MOUSE' =   

          〃MOUSE pressed〃;  

        break;  

      case MouseEvent。MOUSE_RELEASED:  

        display。evnt'Display。MOUSE' =   

          〃MOUSE released〃;  

        break;  

      case MouseEvent。MOUSE_ENTERED:   

        display。evnt'Display。MOUSE' =   

          〃MOUSE entered〃;  

        break;  

      case MouseEvent。MOUSE_EXITED:   

        display。evnt'Display。MOUSE' =   

          〃MOUSE exited〃;  

        break;  

      default:  

    }  

    display。evnt'Display。MOUSE' +=   

      〃; x = 〃 + e。getX() +   

      〃; y = 〃 + e。getY ();  

    repaint();  

    super。processMouseEvent(e);  

  }  

  public void  

  processMouseMotionEvent(MouseEvent e) {  

    switch(e。getID()) {  



                                                                                         446 


…………………………………………………………Page 448……………………………………………………………

      case MouseEvent。MOUSE_DRAGGED:  

        display。evnt'Display。MOUSE_MOVE' =   

          〃MOUSE dragged〃;  

        break ;  

      case MouseEvent。MOUSE_MOVED:  

        display。evnt'Display。MOUSE_MOVE' =   

          〃MOUSE moved〃;  

        break;  

      default:  

    }  

    display。evnt'Display。MOUSE_MOVE' +=   

      〃; x = 〃 + e。getX() +   

      〃; y = 〃 + e。getY();  

    repaint();  

    super。processMouseMotionEvent(e);  

  }  

}  

  

class MyButton extends Button {  

  int clickCounter;  

  String label = 〃〃;  

  public MyButton() {  

    enableEvents(AWTEvent。ACTION_EVENT_MASK);  

  }  

  public void paint(Graphics g) {  

    g。setColor(Color。green);  

    Dimension s = getSize();  

    g。fillRect(0; 0; s。width; s。height);  

    g。setColor(Color。black);  

    g。drawRect(0; 0; s。width 1; s。height 1);  

    drawLabel(g);  

  }  

  private void drawLabel(Graphics g) {  

    FontMetrics fm = g。getFontMetrics();  

    int width = fm。stringWidth(label);  

    int height = fm。getHeight();  

    int ascent = fm。getAscent();  

    int leading = fm。getLeading();  

    int horizMargin =   

      (getSize()。width width)/2;  

    int verMargin =   

      (getSize()。height height)/2;  

    g。setColor(Color。red);  

    g。drawString(label; horizMargin;   

                 verMargin + ascent + leading);  

  }  

  public void processActionEvent(ActionEvent e) {  

    clickCounter++;  

    label = 〃click #〃 + clickCounter +  

      〃 〃 + e。toString();  

    repaint();  

    super。processActionEvent(e);  



                                                                                             447 


…………………………………………………………Page 449……………………………………………………………

  }  

}  

    

public class BadTechnique extends Frame {  

  BadTechnique() {  

    setLayout(new GridLayout(2;2));  

    add(new EnabledPanel(1; Color。cyan));  

    add(new EnabledPanel(2; Color。lightGray));  

    add(new EnabledPanel(3; Color。yellow));  

    // You can also do it for Windows:  

    enableEvents(AWTEvent。WINDOW_EVENT_MASK);  

  }  

  public void processWindowEvent(WindowEvent e) {  

    System。out。println(e);  

    if(e。getID() == WindowEvent。WINDOW_CLOSING) {  

    
返回目录 上一页 下一页 回到顶部 0 0
未阅读完?加入书签已便下次继续阅读!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!