Javaの-swing-シンプルな電卓インターフェイスを実現

私たちは、スイング、電卓インターフェイスを達成するために、内部の知識の統合利用の今一部の知識部分を学んできました。

知識を適用するには:

1.共通上部容器のJFrameクラスが使用される
。2.中間共通容器JPanelのクラスを使用して、
3行のテキストボックス実装クラスJTextFieldのクラスを使用する
4.ボタンの実装クラスのJButtonクラスが使用
5. ボーダーレイアウトマネージャが使用する
6。グリッドレイアウトマネージャの使い方

基本的な考え方:

1.ウィンドウF1作成
テキストボックスT1作成2.
保存3.インナーパネルP3を作成し、テキストボックスT1
16ボタンを作成4.
5.インナーパネルP2を作成し、グリッドレイアウトを保存するために設定されています16個のボタン
6.アウターパネルP1を作成し、国境のレイアウトを設定し、北部P3を保存し、P2中央保存

以下は、特定のコードの実装を直接実行することができています

import javax.swing.JFrame;   //顶层容器 (框架)
import javax.swing.JPanel; //中间容器 (嵌板)最常用的面板
import javax.swing.JTextField; //单行文本框的实现类
import javax.swing.JButton;  //按钮
import javax.swing.border.EmptyBorder; 
//需要用EmptyBorder类来设置面板的边框属性
import javax.swing.SwingConstants; 
//SwingConstants是一个通常用于在屏幕上定位(位置)或定向(方向)组件的常量的集合
import java.awt.*; //布局管理器的类在这里面

public class calculator
{
	public static void main(String[] args) 
	{
		JFrame f1 = new JFrame("计算器");  //创建顶层容器(窗口)
		f1.setSize(250, 300);        //设置窗口大小

		JPanel p1 = new JPanel(new BorderLayout(5,5)); //创建一个面板
		//里面的new BorderLayout(5,5)是设置面板的布局(边框布局)
		//其中(5,5)的第1个5表示上下控件间距,第2个表示左右控件间距
		
		p1.setBorder(new EmptyBorder(5,5,5,5));   //设置边界距离  border 边界
		//面板的setBorder函数,用于设置面板边缘向内收缩宽度
        //里面的EmtyBorder(5,5,5,5)表示面板上,左,下,右各向内收缩 5个像素
        
        JTextField t1 = new JTextField(); //创建一个单行文本框
		t1.setColumns(10);  //这个用于设置文本框的列数  Columns 列
		t1.setHorizontalAlignment(SwingConstants.RIGHT); //设置文本框右对齐     
		//Horizontal 水平的		Alignment 对齐  记两个单词
		
		JPanel p2 = new JPanel(new GridLayout(4,4,5,5));//创建第二个面板
		//其中设置其布局为网格布局,(第一个4表示1行4个控件)
		//第2个4表示1列4个控件,第1个5表示上下控件间隔为5,第2个5表示左右控件间隔为5(像素)

		JButton b1 = new JButton("7");    //创建16个按钮
		JButton b2 = new JButton("8");
		JButton b3 = new JButton("9");
		JButton b4 = new JButton("/");
		
		JButton b5 = new JButton("4");
		JButton b6 = new JButton("5");
		JButton b7 = new JButton("6");
		JButton b8 = new JButton("*");

		JButton b9 = new JButton("1");
		JButton b10 = new JButton("2");
		JButton b11 = new JButton("3");
		JButton b12 = new JButton("-");
		
		JButton b13 = new JButton("0");
		JButton b14 = new JButton(".");
		JButton b15 = new JButton("=");
		JButton b16 = new JButton("+");

		p2.add(b1);    //将16个按钮全部添加到网格布局的面板p2中
		p2.add(b2);
		p2.add(b3);
		p2.add(b4);
		
		p2.add(b5);
		p2.add(b6);
		p2.add(b7);
		p2.add(b8);
		
		p2.add(b9);
		p2.add(b10);
		p2.add(b11);
		p2.add(b12);
		
		p2.add(b13);
		p2.add(b14);
		p2.add(b15);
		p2.add(b16);
		
		JPanel p3 = new JPanel();   //创建第三个面板,用于保存之前的文本框t1
		p3.add(t1);     //将文本框t1添加到面板p3中
		p1.add(p3,BorderLayout.NORTH);//将p3添加到 为边框布局面板的p1的北部
		p1.add(p2,BorderLayout.CENTER); //将p2添加到面板的中部
		
		f1.add(p1);           //p1面板添加到窗口
		f1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置关闭时操作
		f1.setVisible(true);   //设置可见
	}
}

結果:
電卓インターフェース

おすすめ

転載: blog.csdn.net/weixin_44512194/article/details/93254608