如何在JFrame的布局为FlowLayout的情况下将组件和Container的间隙除去!

请看程序:这是没有实现的程序,改如何改动啊!importjava.awt.Color;importjava.awt.Dimension;importjava.awt.Fl... 请看程序:
这是没有实现的程序,改如何改动啊!
import java.awt.Color;
import java.awt.Dimension;
import java.awt.FlowLayout;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class test3 {
static JFrame jf = new JFrame();
static JPanel jp = new JPanel();

//主函数
public static void main(String[] args) {
jp.setSize(new Dimension(30,30));
jp.setBackground(Color.red);

jf.setLayout(new FlowLayout());//特意将jf的布局管理器设为FlowLayout
jf.add(jp);

jf.setVisible(true);
jf.pack();
}
}

要实现的效果如下:
要实现如上图所示的效果,请各位不要更改jf的布局管理器!
我承认这是一个回子有多少种写法的问题,但我还是想搞明白!嘿嘿嘿,多谢啦!
展开
 我来答
littleatp
2011-04-20 · TA获得超过852个赞
知道小有建树答主
回答量:307
采纳率:100%
帮助的人:380万
展开全部
FlowLayout有两个属性:HGap和VGap,用于指定子组件的垂直和水平间隔,就你的需求,将这两个置为0即可:
FlowLayout layout = new FlowLayout(FlowLayout.Center, 0, 0); //构造方法指定
或者
layout.setVGap(0);
layout.setHGap(0);

以下是更改过的代码:
static JFrame jf = new JFrame();
static JPanel jp = new JPanel();
//主函数
public static void main(String[] args) {
jp.setPreferredSize(new Dimension(300,300)); //setPreferedSize而不是setSize,这样pack才可以使用到该大小。
jp.setBackground(Color.red);

jf.setLayout(new FlowLayout(FlowLayout.CENTER, 0, 0));//特意将jf的布局管理器设为FlowLayout
jf.add(jp);
jf.pack();
jf.setVisible(true);
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式