java中布局问题

我在JPanel中添加了4个button,使用BoxLayout布局管理器垂直排列,但是这4个按钮在垂直方向上紧紧地挨在一起,我想在每个按钮之间设置空隙,这应该怎么弄啊?... 我在JPanel中添加了4个button,使用BoxLayout布局管理器垂直排列,但是这4个按钮在垂直方向上紧紧地挨在一起,我想在每个按钮之间设置空隙,这应该怎么弄啊? 展开
 我来答
失落De风景
2011-05-07 · TA获得超过8558个赞
知道小有建树答主
回答量:699
采纳率:0%
帮助的人:810万
展开全部
使用BOX类的createRigidArea方法
JButton button;
  Container pane = getContentPane();
  BoxLayout boxlayout = new BoxLayout(pane,BoxLayout.Y_AXIS);
  pane.setLayout(boxlayout);
  pane.add(Box.createRigidArea(new Dimension(100,10)));//设置上下左右的间距
xwnjvvl
2011-05-09 · TA获得超过961个赞
知道小有建树答主
回答量:1073
采纳率:0%
帮助的人:0
展开全部
public class NewJFrame1 extends javax.swing.JFrame {

/** Creates new form NewJFrame1 */
public NewJFrame1() {
initComponents();
}

/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
java.awt.GridBagConstraints gridBagConstraints;

jScrollPane1 = new javax.swing.JScrollPane();
jTree1 = new javax.swing.JTree();
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setName("Form"); // NOI18N
getContentPane().setLayout(new java.awt.GridBagLayout());

jScrollPane1.setName("jScrollPane1"); // NOI18N

jTree1.setName("jTree1"); // NOI18N
jScrollPane1.setViewportView(jTree1);

gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.weighty = 1.0;
getContentPane().add(jScrollPane1, gridBagConstraints);

jLabel1.setText(org.openide.util.NbBundle.getMessage(NewJFrame1.class, "NewJFrame1.jLabel1.text")); // NOI18N
jLabel1.setName("jLabel1"); // NOI18N
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 1;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.ipady = 15;
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
getContentPane().add(jLabel1, gridBagConstraints);

jLabel2.setText(org.openide.util.NbBundle.getMessage(NewJFrame1.class, "NewJFrame1.jLabel2.text")); // NOI18N
jLabel2.setName("jLabel2"); // NOI18N
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.ipady = 15;
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
getContentPane().add(jLabel2, gridBagConstraints);

pack();
}// </editor-fold>

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new NewJFrame1().setVisible(true);
}
});
}

// Variables declaration - do not modify
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTree jTree1;
// End of variables declaration

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友b280f36
2011-05-07
知道答主
回答量:19
采纳率:0%
帮助的人:0
展开全部
你在后面加上它的宽度和高度呀,你去查查文档他的构造方法有这个的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
liu516032973
2011-05-07 · 超过15用户采纳过TA的回答
知道答主
回答量:71
采纳率:0%
帮助的人:40.2万
展开全部
改为手动布局吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式