垂直对齐我想要做的是将一个GridBagLayout面板放在我的BorderLayout的中心,并垂直对齐GridBagLayout面板(/和它上面的文本)到TOP(因为它自动地把它放在中间,水平和垂直)。GridBagLayout面板在BorderLayout.CENTER
所以我basicly尝试(但最终在中间x和顶部Ÿ在总页面中具有GridBagLayout的文本仍然代替):
import java.awt.*;
import java.applet.*;
import javax.swing.*;
import javax.imageio.*;
import javax.swing.BorderFactory;
import javax.swing.border.*;
import java.awt.event.*;
public class Test extends JApplet implements MouseListener, ActionListener {
public void init() {
//create borderlayout
this.setLayout(new BorderLayout());
//create a GridBagLayout panel
JPanel gb = new JPanel(new GridBagLayout());
JLabel content = new JLabel("Some text");
//set GridBagConstraints (gridx,gridy,fill,anchor)
setGBC(0, 0, GridBagConstraints.VERTICAL, GridBagConstraints.NORTH);
gb.add(content, gbc); //gbc is containing the GridBagConstraints
this.add(gb, BorderLayout.CENTER);
}
}
所以我试图用gridbagconstraints锚点将对齐方式设置为垂直于北部,顶部,但似乎不起作用。我也尝试调整GridBagLayout面板本身的大小(使其具有完全的布局高度,100%,使用panel.setSize和setPreferredSize),然后使用gridbagconstraints.anchor垂直对齐它上的元素,但那不起作用无论是。
任何人都可以帮我解决这个问题吗?
由于提前,
最好的问候, Skyfe。
所以我的问题是
您的SSCCE在哪里? – camickr 2010-11-09 16:37:00
我仍然不明白为什么这不是一个SSCCE(http://pscode.org/sscce.html)它很短,我只显示涉及问题的代码,这是正确的,我说明了问题给出的代码对我来说看起来像是一个“SSCCE” – Skyfe 2010-11-09 18:37:30
如果它需要能够复制粘贴,只需将它复制粘贴到基本applet代码的init方法或普通java应用程序的主要方法中码。 – Skyfe 2010-11-09 18:39:29