lifecycledemo.java

来自「《java事件处理指南》一书的代码,好东西」· Java 代码 · 共 68 行

JAVA
68
字号
import javax.swing.*;import javax.swing.event.*;import java.awt.*;import java.awt.event.*;public class LifeCycleDemo extends JFrame {   MyButton button;    public LifeCycleDemo()   {/*  A user-defined JButton is created and placed on a JFrame.   */      button = new MyButton("help");      JPanel centerPanel = new JPanel();      centerPanel.add(button);      getContentPane().add(centerPanel, BorderLayout.CENTER);      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);      setBounds(100, 100, 300, 200);      setVisible(true);   }   public static void main(String args[])   {      LifeCycleDemo demo = new LifeCycleDemo();   }}/*   The MyButton class is a JButton that is given some added    *//*   functionality by overriding the processMouseEvent() method  */class MyButton extends JButton{   public MyButton(String label)   {      super(label);      setForeground(Color.black);      setBorder(BorderFactory.createCompoundBorder(                   BorderFactory.createRaisedBevelBorder(),                    BorderFactory.createEmptyBorder(10,10,10,10)));      setFont(new Font("Serif", Font.BOLD, 12));   }/*   The processMouseEvent() method is overridden to change the color   *//*   of the button label when the user presses it.  When the button is  *//*   released, the label color is re-set to be black.  This change      *//*   happens regardless of whether the MouseEvent is sent to a          *//*   listener or not.  After the label color change, the                *//*   processMouseEvent() method from the Component class is called to   *//*   perform the normal MouseEvent processing.                          */    protected void processMouseEvent(MouseEvent event)   {      if ( event.getID() == MouseEvent.MOUSE_PRESSED )      {         setForeground(Color.red);      }      if ( event.getID() == MouseEvent.MOUSE_RELEASED )      {         setForeground(Color.black);      }      super.processMouseEvent(event);   }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?