treeexample.java

来自「程序练习中包括书中实例程序代码和练习中要用到的代码,是压缩文件」· Java 代码 · 共 65 行

JAVA
65
字号
package examples.windows;
import javax.swing.*;
import javax.swing.event.*;
import javax.swing.tree.*;
import java.awt.*;
/** An example class used to demonstrate the use of 
  * the JTree component
  */
public class TreeExample extends JFrame {
   /** Class constructor method
     * @param titleText Window's title bar text
     */
   public TreeExample( String titleText ) {
      super( titleText );
      addWindowListener( new WindowCloser() );

      DefaultMutableTreeNode everything
         = new DefaultMutableTreeNode( "everything" );
      JTree avm = new JTree( everything );
      DefaultMutableTreeNode animal
         = new DefaultMutableTreeNode( "animal" );
      everything.add( animal );
      animal.add( new DefaultMutableTreeNode( "cat" ) );
      animal.add( new DefaultMutableTreeNode( "dog" ) );
      animal.add( new DefaultMutableTreeNode( "fish" ) );
      DefaultMutableTreeNode vegetable
         = new DefaultMutableTreeNode( "vegetable" );
      everything.add( vegetable );
      vegetable.add(
         new DefaultMutableTreeNode( "onion" ) );
      vegetable.add(
         new DefaultMutableTreeNode( "lettuce" ) );
      vegetable.add(
         new DefaultMutableTreeNode( "carrot" ) );
      DefaultMutableTreeNode mineral
         = new DefaultMutableTreeNode( "mineral" );
      everything.add( mineral );
      mineral.add(
         new DefaultMutableTreeNode( "quartz" ) );
      mineral.add(
         new DefaultMutableTreeNode( "feldspar" ) );

      avm.addTreeSelectionListener(
         new TreeSelectionListener() {
            public void
            valueChanged( TreeSelectionEvent e ) {
               JOptionPane.showMessageDialog(
                  TreeExample.this,
                  "You selected " + e.getPath() );
            }
         }
      );

      getContentPane().add( avm, BorderLayout.CENTER );
      setSize( 200, 300 );
      setVisible( true );
   }

   /** The test method for the class
     * @param args not used
     */
   public static void main( String[] args ) {
      new TreeExample( "Tree Example" );
   }
}

⌨️ 快捷键说明

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