1
public class Primary extends JFrame { 
    public Primary(String title) {
        super(title);
        JLabel Label1 = new JLabel("hello");
        Container c= getContentPane();
        c.add(Label1, new AbsoluteConstraints(117,15));
    }
}

JFrameメインクラスでrunnable を呼び出してこのコードを書きました。ただし、エラーは表示されていませんが、コンパイルしようとすると多くのエラーが発生します。エラーは長いですが、ここにそのサンプルがあります:

スレッド「AWT-EventQueue-0」での例外 java.lang.IllegalArgumentException:
    レイアウトに追加できません: 制約は文字列 (または null) でなければなりません
        java.awt.BorderLayout.addLayoutComponent (BorderLayout.java:426) で
        javax.swing.JRootPane$1.addLayoutComponent(JRootPane.java:531) で
        java.awt.Container.addImpl(Container.java:1120) で"
4

3 に答える 3

2

のデフォルトのレイアウトマネージャJFrameBorderLayout

JFrameAPIをよく見てください。

制約の要件を満たすようにレイアウト マネージャーを変更する必要があります (またはその逆)。

于 2012-10-21T02:00:12.807 に答える
1

-まず最初に指摘しておきたいのは、これBorderLayoutが のデフォルト レイアウトですJFrame

-また、デフォルトの が不要な場合は、使用する を明示的に変更する必要がLayoutありますBorderLayout

-可能であれば、チームが 2005 年にGroup Layout開発したものを使用してください。現在 Google から無料で入手できるツールをNetBeans使用してください。Windows Builder Pro

于 2012-10-21T04:49:19.050 に答える