Java实现Windows计算器界面

前一段时间在学校简单的学习了Java,对Java这门我第一次接触的面向对象语言有了一定的了解。

一直没时间整理写的东西,今天打算整理下上传下。

Java相对于C来说比较方便的就是用来写界面(PS:但其实Java写的界面也是十分的“有年代感”)

之前学到写界面时的练手程序就是这个计算器界面

程序其实比较简单,主要就是练习界面的排布等

界面:

代码:

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class CalTest extends JFrame
{
    //相关的二级容器和控件声明一下
    JTextField showtext;//文本框
    JButton bt1;
    JButton bt2;
    JButton bt3;
    JButton bt4;//四个独立的按钮
    JPanel panel1;//面板1(25个按钮)
    JPanel panel2;//面板2(20个按钮)
    JPanel panel3;//面板3(4个按钮)
    JPanel panel4;//三个单选框
    JButton[] bts1;//左边25个按钮的数组
    JButton[] bts2;//右边20个按钮的数组
    JButton[] bts3;//4个按钮的数组
    JRadioButton[] bts4;//3个单选

    public CalTest()
    {
       init();
    }

    //初始化窗体及控件的方法
    private void init()
    {
       this.setSize(760,370);
       this.setLayout(null);
       this.setVisible(true);

       showtext=new JTextField();
       showtext.setLocation(10, 10);
       showtext.setSize(720, 50);
       this.add(showtext);

       panel1=new JPanel();
       panel1.setSize(360, 190);
       panel1.setLocation(10, 110);
       panel1.setLayout(new GridLayout(5,5,3,3));//设置面板1 网格布局,4行1列
       bts1=new JButton[25];
       String[] strs1={" ","Inv","In","(",")","Int","sinh","sin","x^2","n!","dms","cosh","cos","x^y","y√x","派","tanh","tan","x^3","3√x","F-E","Exp","Mod","log","10^x"};
       for(int i=0;i<strs1.length;i++)
       {
           bts1[i]=new JButton(strs1[i]);
           panel1.add(bts1[i]);
       }
       this.add(panel1);

       panel2=new JPanel();
       panel2.setSize(260, 190);
       panel2.setLocation(400, 70);
       panel2.setLayout(new GridLayout(5,4,3,3));//设置面板2 网格布局,5行4列
       bts2=new JButton[20];
       String[] strs2={"MC","MR","MS","M+","←","CE","C","+/","7","8","9","/","4","5","6","*","1","2","3","-"};
       for(int i=0;i<strs2.length;i++)
       {
           bts2[i]=new JButton(strs2[i]);
           panel2.add(bts2[i]);
       }
       this.add(panel2);

       panel3=new JPanel();
       panel3.setSize(55, 150);
       panel3.setLocation(675, 70);
       panel3.setLayout(new GridLayout(4,1,3,3));//设置面板3 网格布局,4行1列
       bts3=new JButton[4];
       String[] strs3={"M-","√","%","1/x"};
       for(int i=0;i<strs3.length;i++)
       {
           bts3[i]=new JButton(strs3[i]);
           panel3.add(bts3[i]);
       }
       this.add(panel3);

       panel4=new JPanel();
       panel4.setSize(50, 50);
       panel4.setLocation(20, 80);
       panel4.setLayout(new GridLayout(1,3,3,3));//设置面板3 网格布局,4行1列
       bts4=new JRadioButton[3];
       String[] strs4={"度","弧度","梯度"};
       for(int i=0;i<strs4.length;i++)
       {
           bts4[i]=(JRadioButton) new JRadioButton(strs4[i]);
           panel4.add(bts4[i]);
       }

       this.add(panel4);

       bt1=new JButton("0");
       bt1.setSize(127, 35);
       bt1.setLocation(400,263);
       this.add(bt1);

       bt2=new JButton(".");
       bt2.setSize(62, 35);
       bt2.setLocation(530,263);
       this.add(bt2);

       bt3=new JButton("+");
       bt3.setSize(62, 35);
       bt3.setLocation(595,263);
       this.add(bt3);

       bt4=new JButton("=");
       bt4.setSize(55, 75);
       bt4.setLocation(675,223);
       this.add(bt4);

    }

}

public class Test {
    public static void main(String[] args) {
       CalTest cal=new CalTest();
    }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Java swing实现的计算器功能完整实例

    本文实例讲述了Java swing实现的计算器功能.分享给大家供大家参考,具体如下: package awtDemo; import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.util.Vector; public class Calculator { String str1 = "0"; // 运算数1 初值一定为0 为了程序的安全 String str2 = "0"

  • java图形界面AWT编写计算器

    一.前言 1)这个计算器是基于java语言下图形界面AWT编写的.其实我认为写这个计算器,实现什么功能不重要,市场也不缺这个计算器,而是在于对AWT中三大布局的及画板的使用简单控件的操作使用.通过联系熟悉掌握AWT基础为深入学习打下基础.这个计算器功能也十分简单,空有其表.不过有兴趣的话可以继续添加功能完善操作等. 2)使用平台:主要使用Myeclipse2014 3)主要知识点:java 基础; awt+swing 二.功能实现及代码展示 1)主要是layout布局的练习,对画板文本框的使用,

  • 使用jsp调用javabean实现超简单网页计算器示例

    以下是代码: Calculator.java 复制代码 代码如下: package com.amos.model; import java.math.BigDecimal; /** * @ClassName: Calculator * @Description: 计算器 * @author: amosli * @email:amosli@infomorrow.com * @date Mar 20, 2014 1:04:59 AM  */ public class Calculator {    

  • java实现简单的计算器类实例

    本文实例讲述了java实现简单的计算器类.分享给大家供大家参考.具体如下: package chap; import java.awt.BorderLayout; import java.awt.Color; import java.awt.FlowLayout; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.text

  • Java简易计算器程序设计

    编写一个模拟计算器的应用程序,使用面板和网格布局, 添加一个文本框,10个数字按钮(0~9),4个加减乘除按钮, 一个等号按钮,一个清除按钮,一个求平方根按钮,一个退格按钮, 要求将计算公式和结果显示在文本框中,实现效果如下图所示. Java简易计算器代码: import javax.swing.*; import javax.swing.JTextField; import java.awt.*; import java.awt.event.*; import java.lang.*; imp

  • java模仿windows计算器示例

    这个计算器的界面模仿Windows自带的简易计算器,包括交互界面和和对各种输入的响应.目前尚未实现菜单栏和记忆类按钮的功能 复制代码 代码如下: import java.awt.Color;import java.awt.Container;import java.awt.GridLayout;import java.awt.Insets;import java.awt.event.ActionEvent;import java.awt.event.ActionListener; import

  • java按钮控件数组实现计算器界面示例分享

    思路如下: 创建一个类,通过extends使其继承窗体类JFrame:创建一个JFrame对象,使用JFrame类的setVisible()方法设置窗体可见:在构造函数中,使用super()方法继承父类的构造方法:使用setTitle()方法设置窗体的标题:使用setBounds()方法设置窗体的显示位置及大小:使用setDefaultCloseOperation()方法设置窗体关闭按钮的动作为退出:使用GridLayout创建网格布局管理器对象:使用GridLayout类的setHgap()方

  • Java实现计算器的代码

    用Java 实现的计算器,原理看代码注释,具体内容如下 public class MyCalculator { public static void main(String[] args) { String obj = "6+(8/2)+6/3+1*8 + 30"; ArrayList<String> arrayList = strFormat(obj); System.out.println(obj + "=" + calculator(arrayLi

  • java 简单的计算器程序实例代码

    java 简单的计算器程序 实现实例: import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Calculator { public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { CalculatorFrame frame = new Calculato

  • java实现简易计算器功能

    本文为大家分享了java实现简易计算器功能,具体内容如下 题目: 编写一个模拟计算器的程序.在面板中添加一个文本框(显示按键及运算结果). 10个数字按钮(0~9).4个运算按钮(加.减.乘.除).一个等号按钮.一个清除按钮, 要求将按键和结果显示在文本框中. 代码过程展示: import java.awt.Container; import java.awt.FlowLayout; import java.awt.GridLayout; import java.awt.event.Action

随机推荐