⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 numbertextfieldfactory.java

📁 一个用java写的地震分析软件(无源码)-used to write a seismic analysis software (without source)
💻 JAVA
字号:
package org.trinet.util.graphics.text;
import java.awt.*;
import java.text.*;
import org.trinet.util.graphics.text.*;

public class NumberTextFieldFactory {
    protected static final String DEFAULT_PATTERN = "#.#";
    protected static final Font DEFAULT_FONT = new Font("Monospaced", Font.PLAIN, 12);

    protected static DecimalFormat createFormat(String pattern, boolean parseIntegerOnly) {
	String formatPattern = pattern;
	if (formatPattern == null) formatPattern = DEFAULT_PATTERN;
	DecimalFormat numberFormat  = (DecimalFormat) NumberFormat.getNumberInstance();
	if (numberFormat instanceof DecimalFormat) {
	   ((DecimalFormat) numberFormat).setGroupingUsed(false);
	   ((DecimalFormat) numberFormat).setDecimalSeparatorAlwaysShown(false);
	   ((DecimalFormat) numberFormat).applyPattern(formatPattern);
	   ((DecimalFormat) numberFormat).setParseIntegerOnly(parseIntegerOnly);
	}
	else throw new ClassCastException("createFormat - cannot create DecimalFormat.");	
	return numberFormat;
    }

    protected static NumberTextField createNumberTextField(int columns, DecimalFormat numberFormat, Font font,
								boolean absoluteValueOnly) {
//        FormattedNumberDocument fnd = new FormattedNumberDocument(numberFormat, columns, absoluteValueOnly); 
//	NumberTextField textField = new NumberTextField(fnd, columns+1, numberFormat );
        NumberTextField textField = new NumberTextField(
            new FormattedNumberDocument(numberFormat, columns, absoluteValueOnly), columns+1, numberFormat );
	if (font == null) textField.setFont(DEFAULT_FONT);
	else textField.setFont(font);
	return textField;
    }

    public NumberTextField createInputField(int fieldColumns, boolean fieldIntegerOnly) {
	return createNumberTextField(fieldColumns, createFormat(DEFAULT_PATTERN, fieldIntegerOnly), DEFAULT_FONT, false);
    }

    public static NumberTextField createInputField(int fieldColumns, boolean fieldIntegerOnly,
				String fieldPattern, Font fieldFont, boolean absoluteValueOnly) {
	return createNumberTextField(fieldColumns, createFormat(fieldPattern, fieldIntegerOnly), fieldFont, absoluteValueOnly);
    }

} // end of NumberTextFieldFactory class

⌨️ 快捷键说明

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