JPanel
子孫のデフォルトのレイアウトマネージャーをどのようにオーバーライドしますか?私は自分のクラスを持っていてnull
、デフォルトになりたいです。
質問する
1848 次
3 に答える
5
JPanel
を受け入れるコンストラクターを使用しますLayoutManager
。
import java.awt.LayoutManager;
import javax.swing.JPanel;
public class MyPanel extends JPanel {
public MyPanel() {
this(true);
}
public MyPanel(boolean isDoubleBuffered) {
super(null, isDoubleBuffered);
}
public MyPanel(LayoutManager layout, boolean isDoubleBuffered) {
super(layout, isDoubleBuffered);
}
public MyPanel(LayoutManager layout) {
this(layout, true);
}
}
于 2013-02-22T15:22:10.710 に答える
2
サブクラスに初期化ブロックを追加できます。
public class MyPanel extends JPanel {
{
setLayout(null);
}
// ... class implementation
}
于 2013-02-22T15:34:18.190 に答える
1
JPanel panel = new JPanel();
panel.setLayout(new MyLayout());
また
contentPane.setLayout(null);
于 2013-02-22T15:22:31.190 に答える