下面是我设计的一个简单的计算器的图形界面,但自己一直都弄不好,代码如下:
/*
* Calculator GUI
*/
import javax.swing.*;
public class CalculatorGUI {
public static void main(String[] args){
//setLayout(new FlowLayout());
JLabel title = new JLabel ("简易计算器");
JLabel name1 = new JLabel ("运算数一");
JTextField number1 = new JTextField(" ");
JLabel name2 = new JLabel ("运算数二");
JTextField result = new JTextField(" ");
JLabel resultName = new JLabel ("运算结果");
JTextField number2 = new JTextField(" ");
JButton add = new JButton("相加");
JButton Subtraction = new JButton ("相减");
JButton restart = new JButton ("全部清零");
JPanel panel = new JPanel();
panel.add(title);
panel.add(name1);
panel.add(name2);
panel.add(number1);
panel.add(number2);
panel.add(resultName);
panel.add(result);
panel.add(add);
panel.add(Subtraction);
panel.add(restart);
JFrame jframe = new JFrame();
jframe.setSize(300 , 400);
jframe.setVisible(true);
jframe.setTitle("简易计算器");
jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jframe.add(panel);
}
}
这个代码得出的界面很丑:
我想弄成是这个样子的:改了好久都没改好,来论坛求助一下,各位大虾帮解释一下该怎么改,谢谢。
/*
* Calculator GUI
*/
import javax.swing.*;
public class CalculatorGUI {
public static void main(String[] args){
//setLayout(new FlowLayout());
JLabel title = new JLabel ("简易计算器");
JLabel name1 = new JLabel ("运算数一");
JTextField number1 = new JTextField(" ");
JLabel name2 = new JLabel ("运算数二");
JTextField result = new JTextField(" ");
JLabel resultName = new JLabel ("运算结果");
JTextField number2 = new JTextField(" ");
JButton add = new JButton("相加");
JButton Subtraction = new JButton ("相减");
JButton restart = new JButton ("全部清零");
JPanel panel = new JPanel();
panel.add(title);
panel.add(name1);
panel.add(name2);
panel.add(number1);
panel.add(number2);
panel.add(resultName);
panel.add(result);
panel.add(add);
panel.add(Subtraction);
panel.add(restart);
JFrame jframe = new JFrame();
jframe.setSize(300 , 400);
jframe.setVisible(true);
jframe.setTitle("简易计算器");
jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jframe.add(panel);
}
}
这个代码得出的界面很丑:
我想弄成是这个样子的:改了好久都没改好,来论坛求助一下,各位大虾帮解释一下该怎么改,谢谢。
解决方案 »
- java解析XML遇到有汉字的XML不能解析
- 求一个JAVA应用程序
- String不是不能改变么??
- 暑假想学一下java 3D 游戏开发```谁能介绍几本比较有意思的书吗?
- 请问java中">>>"和"<<<"都是干吗用的:( 谢谢啊!
- 怎样将java.util.Date和java.sql.Date类型互换?
- java里怎么获取一个文件的大小?
- 问个很简单的问题:如何把一个double数值只保留前n位小数?急!!
- jbuilder4的enterprise setup需要weblogic51,但我的是weblogic6,应该怎样才能让jbuilder支持6啊?
- 请教java有没有类似vb中type的用法
- [求助]用java实现简单工厂模式下的计算器程序时出现的问题,求大侠指教!
- 华为T2000 corba 客户端如何关闭连接
细节的地方就自己处理一下好了。package com.tur.demo;import info.clearthought.layout.TableLayout;import javax.swing.*;public class Hello extends JPanel {
public Hello() {
double p = TableLayout.PREFERRED;
double[][] size = {
{0.5, 0.5},
{p, p, p, p, p, p}
}; TableLayout layout = new TableLayout(size);
layout.setHGap(20);
layout.setVGap(15);
setLayout(layout); add(new JLabel("简易计算器"), "0, 0, 1, 0, c, c");
add(new JLabel("运算数一"), "0, 1, r, c");
add(new JTextField(10), "1, 1, l, c");
add(new JLabel("运算数二"), "0, 2, r, c");
add(new JTextField(10), "1, 2, l, c");
add(new JLabel("运算结果"), "0, 3, r, c");
add(new JTextField(10), "1, 3, l, c");
add(new JButton("相加"), "0, 4, r, c");
add(new JButton("相减"), "1, 4, c, c");
add(new JButton("全部清零"), "0, 5, , 1, 5, c, c");
} private static void createGuiAndShow() {
JFrame frame = new JFrame(""); frame.getContentPane().add(new Hello()); // Set frame's close operation and location in the screen.
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(400, 400);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
} public static void main(String[] args) {
createGuiAndShow();
}
}