componenteventdemo.java

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

JAVA
55
字号
import javax.swing.*;import java.awt.*;import java.awt.event.*;public class ComponentEventDemo extends JFrame {   private JLabel label;   public ComponentEventDemo()   {/*  A very long label is created and placed on a JFrame  */      label = new JLabel("This is a very, very long label");      label.setFont(new Font("Serif", Font.BOLD, 14));      label.setForeground(Color.black);      JPanel panel = new JPanel();      panel.add(label);      getContentPane().add(panel);/*  The JFrame registers a ComponentListener    */      addComponentListener(new CompListener());      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);      setBounds(100, 100, 300, 200);      setVisible(true);   }/*  We're only really interested in the componentResized() method  */ /*  so the ComponentListener is implemented as an inner class      *//*  that extends the ComponentAdapter class. When the JFrame is    *//*  resized, a ComponentEvent is generated and sent to the         *//*  componentResized() method.  This method tests to see if the    *//*  JFrame width is smaller than the JLabel width.  If it is, the  *//*  JFrame is resized so it is wider than the JLabel.              */   class CompListener extends ComponentAdapter   {      public void componentResized(ComponentEvent event)      {         Component comp = event.getComponent();          if ( comp.getWidth() < label.getWidth() )         {            comp.setSize( label.getWidth()+100, comp.getHeight() );         }             }   }   public static void main(String args[])   {      ComponentEventDemo adj = new ComponentEventDemo();   }}

⌨️ 快捷键说明

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