java swing panel问题_关于 Java swing Box 的使用问题

代码

import javax.swing.*;

import java.awt.*;

public class C5Ex1_2 {

final static int WIDTH = 400;

final static int HEIGHT = 400;

public C5Ex1_2() {

JFrame jf = new JFrame("program 1");

jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

jf.setSize(WIDTH, HEIGHT);

JPanel panel = new JPanel();

jf.setContentPane(panel);

panel.setLayout(new BorderLayout());

Box vbox = Box.createVerticalBox();

// panel.setLayout(vbox);

panel.add(vbox, BorderLayout.CENTER);

Box hBox=Box.createHorizontalBox();

hBox.setSize(WIDTH, 20);

JTextField tf_out = new JTextField(15);

tf_out.setMaximumSize(tf_out.getPreferredSize());

hBox.add(tf_out);

vbox.add(hBox);

String[] names = {

"1", "2", "3", "%", "ON",

"4", "5", "6", "=", "AC",

"7", "8", "9", ".", "+/-",

"0", "+", "-", "*", "C"

};

hBox = null;

for(int i=0;i

if(i%5==0) {

// if(hBox != null) {

// hBox.setMaximumSize(hBox.getPreferredSize());

// System.out.println("size:" + hBox.getSize() + ":i=" + i);

// }

System.out.println("i="+i);

hBox = Box.createHorizontalBox();

Dimension size = new Dimension(400, 40);

hBox.setPreferredSize(size);

vbox.setBackground(Color.red);

vbox.add(hBox);

}

JButton btn = new JButton(names[i]);

Dimension preferSize = new Dimension(50, 40);

btn.setPreferredSize(preferSize);

// btn.setSize(50, 40);

hBox.add(btn);

System.out.println("hBox" + hBox);

}

jf.setVisible(true);

}

public static void main(String[] args) {

new C5Ex1_2();

}

}

显示结果

9db25229d61b9a7bb9b30012c66f4d4c.png

为什么感觉 Box 越来越小了?还是 btn 设置大小不起做用?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值