callabel.java

来自「java做的一个计算器」· Java 代码 · 共 78 行

JAVA
78
字号
/*
 * 创建日期 2005-12-25
 *
 * TODO 要更改此生成的文件的模板,请转至
 * 窗口 - 首选项 - Java - 代码样式 - 代码模板
 */
package 计算器2;

/**
 * @author T~Master
 *
 * TODO 要更改此生成的类型注释的模板,请转至
 * 窗口 - 首选项 - Java - 代码样式 - 代码模板
 */

import java.awt.Color;

import javax.swing.BorderFactory;
import javax.swing.JLabel;

public class CalLabel extends JLabel {
	public final String M_FLAG = "   M   ";

	String Mem;

	CalLabel() {
		this.clearMFlag();
		this.setText(M_FLAG);
		Mem = "0";
		this.setHorizontalAlignment(JLabel.CENTER);
		this.setVerticalAlignment(JLabel.CENTER);
		this.setHorizontalTextPosition(JLabel.CENTER);
		this.setVerticalTextPosition(JLabel.CENTER);
		this.setBorder(BorderFactory.createLoweredBevelBorder());
	}

	public void memory_mc() {
		this.clearMFlag();
		Mem = "0";
	}

	public void memory_mr(CalTextField txfDisplay) {
		txfDisplay.setBufText(get_MemValue());
	}

	public void memory_ms(String strSetValue) {
		if (strSetValue.equals("0")) {
			memory_mc();
		} else {
			Mem = strSetValue;
			this.setMFlag();
		}
	}

	public void memory_mp(String strSetValue) {
		if (strSetValue.equals("0"))
			return;
		double Op1, Op2;
		Op1 = Double.parseDouble(get_MemValue());
		Op2 = Double.parseDouble(strSetValue);
		Op1 += Op2;
		Mem = String.valueOf(Op1);
		this.setMFlag();
	}

	public String get_MemValue() {
		return Mem;
	}

	public void setMFlag() {
		this.setForeground(Color.BLACK);
	}

	public void clearMFlag() {
		this.setForeground(this.getBackground());
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?