繁体   English   中英

Swing setLayout 错误

[英]Swing setLayout Bug

我正在尝试创建一个简单的 swing 程序,该程序在 eclipse IDE 上使用 BorderLayout。 我相信我正确使用了 setLayout 方法,但出现了一个给定的错误,我不知道如何修复它。 有人可以帮我解决这个错误吗? 给定的错误是

Container 类型中的方法 setLayout(LayoutManager) 不适用于参数 (BorderLayout)

我做了一些研究,但没有运气解决它。 这是我使用的代码。

import java.awt.LayoutManager;

import javax.swing.JButton;
import javax.swing.JFrame;

public class BorderLayout extends JFrame {

    JButton btn1 = new JButton("1");
    JButton btn2 = new JButton("2");
    JButton btn3 = new JButton("3");
    JButton btn4 = new JButton("4");
    JButton btn5 = new JButton("5");
    JButton btn6 = new JButton("6");

    public void initialize() {
        setTitle("BorderLayout Demo");
        setSize(500, 500);
        setLocationRelativeTo(null);
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        setVisible(true);
    }

    public BorderLayout() {
        getContentPane().setLayout(new BorderLayout());

        initialize();
    }

    public static void main(String[] args) {
        new BorderLayout();
    }

}

这是我桌面上的错误视图,因为我无法在此处显示图像

您正在用自己的类隐藏java.awt.BorderLayout

在您的通话中限定BorderLayout

getContentPane().setLayout(new java.awt.BorderLayout());

或者,更好的是,将您的类名更改为明确的名称。

您传递的是您自己的BorderLayout类的实例,而不是java.awt.BorderLayout 命名类可能不是一个好主意。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM