我想在我的Java Flowlayout中添加一些空间 [英] I Want To Add Some Space In My Java Flowlayout

查看:113
本文介绍了我想在我的Java Flowlayout中添加一些空间的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在JTextField和JButtons之间添加一些空格,我正在使用流程布局,感谢帮助



我正在制作一个计算器



CODE



I would like to add some space between the JTextField and the JButtons, i am using a flow layout, and help would be appreciated

I am making a calculator

CODE

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();
	}
}

推荐答案

这是一个计算器吗?



请使用Gridlayout - 当你调整窗口大小时,Flowlayout会改变。



布局管理器的可视指南 [ ^ ] @ oracle.com



我还建议OOP返回按钮的代码 - 创建一个将标签文本作为参数传递的函数。更好,更短。
Is that a calculator?

Please use Gridlayout for that - the Flowlayout will change when you resize the Window.

A Visual Guide to Layout Managers[^] @ oracle.com

I'd also recommend to OOP the returning code for the buttons - make a function that you pass the label text as an argument. Much better, much shorter.


这篇关于我想在我的Java Flowlayout中添加一些空间的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆