我需要知道如何在FlowLayout中添加空间



我想在JTextField和JButtons之间添加一些空间,我正在使用流布局,将不胜感激

文本字段和按钮都要关闭,任何输入都会有所帮助,我是新手

我正在做一个计算器

代码

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.ComponentOrientation;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.FlowLayout;
 import java.awt.Font;
import javax.swing.JButton;
import javax.swing.JFrame;
 import javax.swing.JTextField;

public class Ken {
static JTextField text = new JTextField("0",9);

public static void frame(){
    JFrame frame = new JFrame("MyCalc");
    frame.setSize(480, 600);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setVisible(true);
    frame.setResizable(false);
    FlowLayout fl = new FlowLayout(0, 30, 20);
    setLayout(fl);
    frame.getContentPane().setLayout(fl);
    Container con = frame.getContentPane();
    con.setBackground(Color.LIGHT_GRAY);
    Font f = new Font("MS UI Gothic", Font.BOLD, 40);
    Font f2 = new Font("Engravers MT", Font.PLAIN, 40);
    int bHeight = 80;
    int bWidth = 70;
    text.setBackground(Color.GREEN);
    text.setFont(f2);
    text.setPreferredSize(new Dimension(bHeight, bWidth));


    frame.add(text, BorderLayout.NORTH);
    JButton oneButton = new JButton("1");
    oneButton.setPreferredSize(new Dimension(bHeight, bWidth));
    oneButton.setBackground(Color.DARK_GRAY);
    oneButton.setForeground(Color.GREEN);
    oneButton.setFont(f);
    frame.add(oneButton);
    JButton twoButton = new JButton("2");
    twoButton.setPreferredSize(new Dimension(bHeight, bWidth));
    twoButton.setBackground(Color.DARK_GRAY);
    twoButton.setForeground(Color.GREEN);
    twoButton.setFont(f);
    frame.add(twoButton);
    JButton threeButton = new JButton("3");
    threeButton.setPreferredSize(new Dimension(bHeight, bWidth));
    threeButton.setBackground(Color.DARK_GRAY);
    threeButton.setForeground(Color.GREEN);
    threeButton.setFont(f);
    frame.add(threeButton);
    JButton plusButton = new JButton("+");
    plusButton.setPreferredSize(new Dimension(bHeight, bWidth));
    plusButton.setBackground(Color.DARK_GRAY);
    plusButton.setForeground(Color.GREEN);
    plusButton.setFont(f);
    frame.add(plusButton);
    JButton fourButton = new JButton("4");
    fourButton.setPreferredSize(new Dimension(bHeight, bWidth));
    fourButton.setBackground(Color.DARK_GRAY);
    fourButton.setForeground(Color.GREEN);
    fourButton.setFont(f);
    frame.add(fourButton);
    JButton fiveButton = new JButton("5");
    fiveButton.setPreferredSize(new Dimension(bHeight, bWidth));
    fiveButton.setBackground(Color.DARK_GRAY);
    fiveButton.setForeground(Color.GREEN);
    fiveButton.setFont(f);
    frame.add(fiveButton);
    JButton sixButton = new JButton("6");
    sixButton.setPreferredSize(new Dimension(bHeight, bWidth));
    sixButton.setBackground(Color.DARK_GRAY);
    sixButton.setForeground(Color.GREEN);
    sixButton.setFont(f);
    frame.add(sixButton);
    JButton minusButton = new JButton("-");
    minusButton.setPreferredSize(new Dimension(bHeight, bWidth));
    minusButton.setBackground(Color.DARK_GRAY);
    minusButton.setForeground(Color.GREEN);
    minusButton.setFont(f);
    frame.add(minusButton);
    JButton sevenButton = new JButton("7");
    sevenButton.setPreferredSize(new Dimension(bHeight, bWidth));
    sevenButton.setBackground(Color.DARK_GRAY);
    sevenButton.setForeground(Color.GREEN);
    sevenButton.setFont(f);
    frame.add(sevenButton);
    JButton eightButton = new JButton("8");
    eightButton.setPreferredSize(new Dimension(bHeight, bWidth));
    eightButton.setBackground(Color.DARK_GRAY);
    eightButton.setForeground(Color.GREEN);
    eightButton.setFont(f);
    frame.add(eightButton);
    JButton nineButton = new JButton("9");
    nineButton.setPreferredSize(new Dimension(bHeight,bWidth));
    nineButton.setBackground(Color.DARK_GRAY);
    nineButton.setForeground(Color.GREEN);
    nineButton.setFont(f);
    frame.add(nineButton);
    JButton timesButton = new JButton("*");
    timesButton.setPreferredSize(new Dimension(bHeight, bWidth));
    timesButton.setBackground(Color.DARK_GRAY);
    timesButton.setForeground(Color.GREEN);
    timesButton.setFont(f);
    frame.add(timesButton);
    JButton zeroButton = new JButton("0");
    zeroButton.setPreferredSize(new Dimension(bHeight, bWidth));
    zeroButton.setBackground(Color.DARK_GRAY);
    zeroButton.setForeground(Color.GREEN);
    zeroButton.setFont(f);
    frame.add(zeroButton);
    JButton enterButton = new JButton("=");
    enterButton.setPreferredSize(new Dimension(190, bWidth));
    enterButton.setBackground(Color.DARK_GRAY);
    enterButton.setForeground(Color.GREEN);
    enterButton.setFont(f);
    frame.add(enterButton);
    JButton dividButton = new JButton("/");
    dividButton.setPreferredSize(new Dimension(bHeight, bWidth));
    dividButton.setBackground(Color.DARK_GRAY);
    dividButton.setForeground(Color.GREEN);
    dividButton.setFont(f);
    frame.add(dividButton);
    frame.setComponentOrientation(
            ComponentOrientation.LEFT_TO_RIGHT);
}

private static Dimension Dimension(int bHeight, int bWidth) {
    // TODO Auto-generated method stub
    return null;
}

private static void setLayout(FlowLayout fl) {
    // TODO Auto-generated method stub
}

public static void main(String[] args){
    frame();
}
 }

FlowLayout fl=新的FlowLayout(0,30,20);

与这个问题无关,但不要使用幻数。我不知道0是什么意思。阅读FlowLaout API并使用API提供的正确变量名称。

默认情况下,框架的内容窗格使用BorderLayout。查看我们的BorderLayout API。可以指定零部件之间的间隙大小。因此,您可以创建一个具有所需间隙的新BorderLayout,然后将内容窗格的布局设置为此BorderLayout。

或者,您可以将EmptyBorder添加到顶部面板。阅读关于如何使用边框的Swing教程,了解更多信息和示例。

相关内容

  • 没有找到相关文章

最新更新