这是一段Java Swing 的代码import java.awt.*;
import java.awt.event.*;
import javax.swing.*;public class ToolbarFrame2 extends Frame{  // This time, let's use JButtons!
  JButton cutButton, copyButton, pasteButton;
  JButton javaButton, macButton, motifButton, winButton;  public ToolbarFrame2( ) {
    super("Toolbar Example (Swing)");
    setSize(450, 250);    addWindowListener(new WindowAdapter( ) {
      public void windowClosing(WindowEvent e) {
        System.exit(0);
      }
    });    ActionListener printListener = new ActionListener( ) {
      public void actionPerformed(ActionEvent ae) {
        System.out.println(ae.getActionCommand( ));
      }
    };
  
    // JPanel works similarly to Panel, so we'll use it.
    JPanel toolbar = new JPanel( );
    toolbar.setLayout(new FlowLayout(FlowLayout.LEFT));    cutButton = new JButton("Cut");
    cutButton.addActionListener(printListener);
    toolbar.add(cutButton);    copyButton = new JButton("Copy");
    copyButton.addActionListener(printListener);
    toolbar.add(copyButton);    pasteButton = new JButton("Paste");
    pasteButton.addActionListener(printListener);
    toolbar.add(pasteButton);    add(toolbar, BorderLayout.NORTH);
    
    // Add the L&F controls.
    JPanel lnfPanel = new JPanel( );
    LnfListener lnfListener = new LnfListener(this);    macButton = new JButton("Mac");
    macButton.addActionListener(lnfListener);
    lnfPanel.add(macButton);
    javaButton = new JButton("Metal");
    javaButton.addActionListener(lnfListener);
    lnfPanel.add(javaButton);
    motifButton = new JButton("Motif");
    motifButton.addActionListener(lnfListener);
    lnfPanel.add(motifButton);
    winButton = new JButton("Windows");
    winButton.addActionListener(lnfListener);
    lnfPanel.add(winButton);
    add(lnfPanel, BorderLayout.SOUTH);   
  }  public static void main(String args[]) {
    ToolbarFrame2 tf2 = new ToolbarFrame2( );
    tf2.setVisible(true);
  }
}请问红色区域为什么错了
Eclipse提示LnfListener cannot be resolved to a type
是不是没有包括这个类库?

解决方案 »

  1.   

    仅仅从你现在的代码上来看,代码里面没有创建LnfListener类,而且从你import的包来看,也没有任何一个包含了LnfListener,所以Eclipse找不到这个类,就会报错。如果你的LnfListener类的代码放在其他目前下的,一定要在Build Path里包含这个LnfListener类文件所在的路径。
    如果本来就没有LnfListener类的代码,那么你还需要自己创建一个类,从名字上来看这是一个侦听器,需要从ActionListener里面继承。
      

  2.   

    首先谢谢您的回复
    LnfListener类不是Swing中自带的吗?
    我还以为是他自己自带的
    我是看那个Java Swing的那本书上的代码
      

  3.   

    如果是系统的类,会像JButton一样,字体颜色会被特殊显示的吧
      

  4.   

    LnfListener 指什么类,你创建了,没有
      

  5.   

    如果你用的是Eclipse,把光标的焦点放在LnfListener这个单词上,然后按下Ctrl+Shift+M...