无法将JButton添加到JFrame

时间:2015-08-14 21:07:16

标签: java swing jframe add

我正在关注此YouTube教程(https://www.youtube.com/watch?v=DFQzFJqOSbA&index=83&list=PLFE2CE09D83EE3E28),但我收到添加(lb)红色下划线并出现此错误:

Container类型中的方法add(Component)不适用于参数(JButton)

我很困惑,因为JButton根据这个http://docs.oracle.com/javase/7/docs/api/javax/swing/JButton.html扩展了Container,这并不意味着它是一个有效的参数?

我觉得我忽略了一些愚蠢的错误,感谢帮助。

import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;

public class Layout extends JFrame {
    private JButton lb;
    private JButton cb;
    private JButton rb;
    private FlowLayout layout;
    private Container container;

    public Layout() {
        super("title");
        layout = new FlowLayout();
        container = getContentPane();
        setLayout(layout);

        lb = new JButton("left");
        add(lb);
    }
}

当我鼠标悬停在lb = new JButton(“left”)时,弹出窗口显示...

Open Declaration javax.swing.JButton.JButton(String arg0)
@ConstructorProperties(value={"text"})

注意:此元素既没有附加源也没有附加Javadoc,因此找不到Javadoc。

修改

我的导入行上还有一个错误

The type javax.swing.JComponent cannot be resolved. 
It is indirectly referenced from required .class files

这是我项目的截图

puu.sh/jBIt3/02a27cb22b.png puu.sh/jBIuY/5a56f7426e.png puu.sh/jBIvY/7b94dc5782.png

1 个答案:

答案 0 :(得分:0)

重新安装了较新的eclipse版本。