📄 calculatorelements.java
字号:
/*
* 创建日期 2005-12-25
*
* TODO 要更改此生成的文件的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
package 计算器2;
/**
* @author T~Master
*
* TODO 要更改此生成的类型注释的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.KeyEvent;
import javax.swing.JButton;
import javax.swing.JCheckBoxMenuItem;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JRadioButtonMenuItem;
import javax.swing.KeyStroke;
import javax.swing.SwingConstants;
import javax.swing.UIManager;
public class CalculatorElements
{
protected JMenuBar mb;
protected JMenu menuEdit;
protected JMenu menuView;
protected JMenu menuHelp;
protected JMenuItem itemCopy;
protected JMenuItem itemPaste;
protected JRadioButtonMenuItem itemCalComm;
protected JRadioButtonMenuItem itemCalFunc;
protected JCheckBoxMenuItem itemKetakugiru;
protected JMenuItem itemTopicFind;
protected JMenuItem itemVersion;
protected JButton btnMc;
protected JButton btnMr;
protected JButton btnMs;
protected JButton btnMp;
protected JButton btnBack;
protected JButton btnCe;
protected JButton btnC;
protected JButton btnPn;
protected JButton btnDot;
protected JButton btnPlus;
protected JButton btnSub;
protected JButton btnMulti;
protected JButton btnDiv;
protected JButton btnSqrt;
protected JButton btnParcent;
// 1/x, Reciprocal button
protected JButton btnRecip;
protected JButton btnEquals;
// number button rank
protected JButton btnNum[];
protected JFrame fraMain;
protected static CalLabel lblMem;
protected static CalTextField txfDisplay;
protected JPanel pnlFunc;
protected JPanel pnlFunc_1;
protected JPanel pnlFunc_2;
protected JPanel pnlButton;
protected JPanel pnlMain;
public void elments_init()
{
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Exception e) { }
fraMain = new JFrame("Calculator");
//Menu
mb = new JMenuBar();
menuEdit = new JMenu("Edit");
menuEdit.setMnemonic(KeyEvent.VK_E);
menuView = new JMenu("View");
menuView.setMnemonic(KeyEvent.VK_V);
menuHelp = new JMenu("Help");
menuHelp.setMnemonic(KeyEvent.VK_H);
itemCopy = new JMenuItem("Copy",KeyEvent.VK_C);
itemCopy.setActionCommand("copy");
KeyStroke ctrlCKeyStroke = KeyStroke.getKeyStroke("control C");
itemCopy.setAccelerator(ctrlCKeyStroke);
itemPaste = new JMenuItem("Paste",KeyEvent.VK_P);
itemPaste.setActionCommand("paste");
KeyStroke ctrlVKeyStroke = KeyStroke.getKeyStroke("control V");
itemPaste.setAccelerator(ctrlVKeyStroke);
itemCalComm = new JRadioButtonMenuItem("Common cal(T)",true);
itemCalComm.setMnemonic(KeyEvent.VK_T);
itemCalComm.setActionCommand("typecomm");
itemCalFunc = new JRadioButtonMenuItem("Function cal(S)");
itemCalFunc.setMnemonic(KeyEvent.VK_S);
itemCalFunc.setActionCommand("typefunc");
itemKetakugiru = new JCheckBoxMenuItem("show the separator(I)");
itemKetakugiru.setMnemonic(KeyEvent.VK_I);
itemKetakugiru.setActionCommand("Ketakugiru");
itemTopicFind = new JMenuItem("topic search(H)");
itemTopicFind.setMnemonic(KeyEvent.VK_H);
itemTopicFind.setActionCommand("topic");
itemVersion = new JMenuItem("version info(A)");
itemVersion.setMnemonic(KeyEvent.VK_A);
itemVersion.setActionCommand("version");
fraMain.setJMenuBar(mb);
mb.add(menuEdit);
mb.add(menuView);
mb.add(menuHelp);
menuEdit.add(itemCopy);
menuEdit.add(itemPaste);
menuView.add(itemCalComm);
menuView.add(itemCalFunc);
menuView.addSeparator();
menuView.add(itemKetakugiru);
menuHelp.add(itemTopicFind);
menuHelp.addSeparator();
menuHelp.add(itemVersion);
// Button
btnMc = new JButton("MC");
btnMc.setForeground(Color.RED);
btnMr = new JButton("MR");
btnMr.setForeground(Color.RED);
btnMs = new JButton("MS");
btnMs.setForeground(Color.RED);
btnMp = new JButton("M+");
btnMp.setForeground(Color.RED);
btnBack = new JButton("Back");
btnBack.setForeground(Color.RED);
btnCe = new JButton(" CE ");
btnCe.setForeground(Color.RED);
btnC = new JButton(" C ");
btnC.setForeground(Color.RED);
btnPn = new JButton("+/-");
btnPn.setForeground(Color.BLUE);
btnDot = new JButton(".");
btnDot.setForeground(Color.BLUE);
btnPlus = new JButton("+");
btnPlus.setForeground(Color.RED);
btnSub = new JButton("-");
btnSub.setForeground(Color.RED);
btnMulti = new JButton("*");
btnMulti.setForeground(Color.RED);
btnDiv = new JButton("/");
btnDiv.setForeground(Color.RED);
btnSqrt = new JButton("sqrt");
btnSqrt.setForeground(Color.BLUE);
btnParcent = new JButton("%");
btnParcent.setForeground(Color.BLUE);
btnRecip = new JButton("1/x");
btnRecip.setForeground(Color.BLUE);
btnEquals = new JButton("=");
btnEquals.setForeground(Color.RED);
// unfocusable
btnMc.setFocusable(false);
btnMr.setFocusable(false);
btnMs.setFocusable(false);
btnMp.setFocusable(false);
btnBack.setFocusable(false);
btnCe.setFocusable(false);
btnC.setFocusable(false);
btnPn.setFocusable(false);
btnDot.setFocusable(false);
btnPlus.setFocusable(false);
btnSub.setFocusable(false);
btnMulti.setFocusable(false);
btnDiv.setFocusable(false);
btnSqrt.setFocusable(false);
btnParcent.setFocusable(false);
btnRecip.setFocusable(false);
btnEquals.setFocusable(false);
btnNum = new JButton[10];
for(int i = 0; i < 10; i++)
{
btnNum[i] = new JButton(Integer.toString(i));
btnNum[i].setFocusable(false);
btnNum[i].setForeground(Color.BLUE);
}
// Label
lblMem = new CalLabel();
// Textbox
txfDisplay = new CalTextField();
// Panel
pnlFunc = new JPanel();
pnlButton = new JPanel();
pnlFunc_1 = new JPanel();
pnlFunc_2 = new JPanel();
pnlMain = new JPanel();
pnlFunc.setLayout(new BorderLayout());
pnlFunc_1.add(lblMem);
pnlFunc_2.setLayout(new FlowLayout());
pnlFunc_2.add(btnBack);
pnlFunc_2.add(btnCe);
pnlFunc_2.add(btnC);
pnlFunc.add(pnlFunc_1,"West");
pnlFunc.add(pnlFunc_2,"East");
pnlButton.setLayout(new GridLayout(4,5));
pnlButton.add(btnMc);
pnlButton.add(btnNum[7]);
pnlButton.add(btnNum[8]);
pnlButton.add(btnNum[9]);
pnlButton.add(btnDiv);
pnlButton.add(btnSqrt);
pnlButton.add(btnMr);
pnlButton.add(btnNum[4]);
pnlButton.add(btnNum[5]);
pnlButton.add(btnNum[6]);
pnlButton.add(btnMulti);
pnlButton.add(btnParcent);
pnlButton.add(btnMs);
pnlButton.add(btnNum[1]);
pnlButton.add(btnNum[2]);
pnlButton.add(btnNum[3]);
pnlButton.add(btnSub);
pnlButton.add(btnRecip);
pnlButton.add(btnMp);
pnlButton.add(btnNum[0]);
pnlButton.add(btnPn);
pnlButton.add(btnDot);
pnlButton.add(btnPlus);
pnlButton.add(btnEquals);
pnlMain.setLayout(new BorderLayout());
pnlMain.add(pnlFunc,"North");
pnlMain.add(pnlButton,"Center");
fraMain.getContentPane().add(txfDisplay,"North");
fraMain.getContentPane().add(pnlMain,"Center");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -