JAVA模拟科学计算器Word格式.docx
- 文档编号:18292028
- 上传时间:2022-12-15
- 格式:DOCX
- 页数:36
- 大小:23.16KB
JAVA模拟科学计算器Word格式.docx
《JAVA模拟科学计算器Word格式.docx》由会员分享,可在线阅读,更多相关《JAVA模拟科学计算器Word格式.docx(36页珍藏版)》请在冰豆网上搜索。
MC"
MR"
MS"
M+"
privateStringCOM[]={"
Backspace"
CE"
C"
privateJButtonkeys[]=newJButton[KEYS.length];
privateJButtoncom[]=newJButton[COM.length];
privateJButtonm[]=newJButton[M.length];
privateJTextFieldresult,hh,jj;
MenuBarmenubar1=newMenuBar();
Menuedit=newMenu("
编辑(E)"
),
view=newMenu("
查看(V)"
help=newMenu("
帮助(H)"
MenuItemcopy=newMenuItem("
复制(C)"
paste=newMenuItem("
粘贴(P)"
standar=newMenuItem("
标准型(T)"
science=newMenuItem("
科学型(S)"
numgroup=newMenuItem("
数字分组(I)"
helpt=newMenuItem("
帮助主题(H)"
about=newMenuItem("
关于计算器(A)"
privatebooleanfirstDigit=true;
//判断第一个输入的字符是否是数字
privatedoubleresultNum=0.0,resultNum2=0.0;
//中间结果
privateStringoperator="
co,str,operator2="
;
privatebooleanoperateValidFlag=true;
//科学性计算器控件及按钮
staticJFramef2=newJFrame("
科学计算器"
privateJTextFieldresult2;
privateString[]KON={"
sta"
F-E"
("
)"
Ave"
dms"
Exp"
In"
Sum"
sin"
x^y"
log"
s"
cos"
x^3"
n!
"
Dat"
tan"
x^2"
pi"
privateString[]KO={"
Mod"
And"
Or"
Xor"
Lsh"
Not"
Int"
A"
B"
D"
E"
F"
privateStringITM[]={"
标准型"
科学型"
十六进制数(H)F5"
十进制(D)F6"
八进制(O)F7"
二进制(B)F8"
四字(Q)F12"
DWORD值(R)F2"
单字(W)F3"
字节(Y)F4"
"
privatefinalString[]COMM={"
privateJButtoncomm[]=newJButton[COMM.length];
privateJButtonkon[]=newJButton[KON.length];
privateJButtonko[]=newJButton[KO.length];
privateMenuItemitm[]=newMenuItem[ITM.length];
privateJPanelpanel0,panel1,panel2,panel3,panel4,panel5,panel6;
Checkboxcheckbox1,checkbox2,checkbox3,checkbox4;
MenuBarmenubar2=newMenuBar();
//添加菜单条
Menuedit2=newMenu("
view2=newMenu("
help2=newMenu("
MenuItemcopy2=newMenuItem("
复制(C)Ctrl+C"
past2=newMenuItem("
粘贴(P)Ctrl+V"
standar2=newMenuItem("
science2=newMenuItem("
numgroup2=newMenuItem("
menuitem1=newMenuItem("
menuitem2=newMenuItem("
menuitem3=newMenuItem("
menuitem4=newMenuItem("
menuitem5=newMenuItem("
menuitem6=newMenuItem("
menuitem7=newMenuItem("
menuitem8=newMenuItem("
helpt2=newMenuItem("
about2=newMenuItem("
//构造函数
publicCa()
{
//标准型开始初始化********************
result=newJTextField("
0."
result.setHorizontalAlignment(JTextField.RIGHT);
//文字右对齐
result.setEditable(false);
//设置为不可编辑
result.setBackground(Color.WHITE);
//设置颜色为白色
JPanelk0=newJPanel();
k0.setLayout(newGridLayout(4,5,5,5));
for(inti=0;
i<
KEYS.length;
i++)
{
keys[i]=newJButton(KEYS[i]);
k0.add(keys[i]);
keys[i].setForeground(Color.blue);
}
keys[3].setForeground(Color.red);
keys[8].setForeground(Color.red);
keys[13].setForeground(Color.red);
keys[18].setForeground(Color.red);
keys[19].setForeground(Color.red);
JPanelc0=newJPanel();
c0.setLayout(newGridLayout(1,3,5,5));
COM.length;
com[i]=newJButton(COM[i]);
c0.add(com[i]);
com[i].setForeground(Color.red);
JPanelm0=newJPanel();
m0.setLayout(newGridLayout(5,1,5,5));
M.length;
m[i]=newJButton(M[i]);
m0.add(m[i]);
m[i].setForeground(Color.red);
m[0].setForeground(Color.black);
//f1的监视器
keys[i].addActionListener(this);
com[i].addActionListener(this);
m[i].addActionListener(this);
//复制事件
copy.addActionListener(newActionListener()
{
publicvoidactionPerformed(ActionEvente)
{
intcount;
count=str.length();
if(count!
=0)
co=result.getText();
else
System.out.println("
没有可复制的对象"
}
});
//粘贴事件
paste.addActionListener(newActionListener()
str=co;
result.setText(str);
copy2.addActionListener(newActionListener()
co=result2.getText();
past2.addActionListener(newActionListener()
result2.setText(str);
edit.add(copy);
edit.add(paste);
view.add(standar);
view.add(science);
view.addSeparator();
view.add(numgroup);
help.add(helpt);
help.addSeparator();
help.add(about);
menubar1.add(edit);
menubar1.add(view);
menubar1.add(help);
//整体布局
JPanelp1=newJPanel();
p1.setLayout(newBorderLayout());
p1.add("
North"
c0);
Center"
k0);
JPanelp2=newJPanel();
p2.setLayout(newBorderLayout());
p2.add("
result);
f1.setLayout(newBorderLayout(3,5));
f1.add("
p2);
p1);
West"
m0);
f1.setBackground(Color.LIGHT_GRAY);
f1.setLocation(200,200);
f1.setMenuBar(menubar1);
f1.setVisible(true);
f1.setResizable(false);
//不可最大化
f1.pack();
//紧凑
f1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//标准型初始化结束
//****************************************************
standar2.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEvente){
f1.setVisible(true);
f2.setVisible(false);
//按钮不可操作
}});
science.addActionListener(newActionListener(){
f1.setVisible(false);
f2.setVisible(true);
//科学性初始化开始
panel0=newJPanel();
panel1=newJPanel();
panel2=newJPanel();
panel3=newJPanel();
panel4=newJPanel();
panel5=newJPanel();
panel6=newJPanel();
panel0.setLayout(newGridLayout(1,4));
//设置网格型布局管理器
panel1.setLayout(newGridLayout(1,3,30,0));
panel2.setLayout(newGridLayout(1,2));
panel3.setLayout(newGridLayout(1,3,5,0));
panel4.setLayout(newGridLayout(5,5,5,5));
panel5.setLayout(newGridLayout(5,6,5,5));
panel6.setLayout(newFlowLayout(FlowLayout.LEFT));
//按钮左对齐
result2=newJTextField("
100);
result2.setHorizontalAlignment(JTextField.RIGHT);
result2.setEditable(false);
//设置为文本不可编辑
result2.setBackground(Color.WHITE);
//设置文本框颜色为白色
CheckboxGroupcbg1=newCheckboxGroup();
checkbox1=newCheckbox("
十六进制"
false,cbg1);
checkbox2=newCheckbox("
十进制"
true,cbg1);
checkbox3=newCheckbox("
八进制"
checkbox4=newCheckbox("
二进制"
panel0.add(checkbox1);
panel0.add(checkbox2);
panel0.add(checkbox3);
panel0.add(checkbox4);
CheckboxGroupcbg2=newCheckboxGroup();
panel1.add(newCheckbox("
角度"
true,cbg2));
弧度"
false,cbg2));
梯度"
JLabelHH=newJLabel("
panel2.add(newCheckbox("
Inv"
false));
Hyp"
hh=newJTextField();
jj=newJTextField();
hh.setText("
hh.setEditable(false);
jj.setText("
jj.setEditable(false);
panel2.add(hh);
panel2.add(HH);
panel2.add(jj);
panel6.add(result2);
edit2.add(copy2);
edit2.add(past2);
view2.add(standar2);
view2.add(science2);
view2.addSeparator();
view2.add(menuitem1);
view2.add(menuitem2);
view2.add(menuitem3);
view2.add(menuitem4);
view2.add(menuitem5);
view2.add(menuitem6);
view2.add(menuitem7);
view2.add(menuitem8);
view2.add(numgroup2);
help2.add(helpt2);
help2.addSeparator();
help2.add(about2);
menubar2.add(edit2);
menubar2.add(view2);
menubar2.add(help2);
COMM.length;
comm[i]=newJButton(COMM[i]);
panel3.add(comm[i]);
comm[i].setForeground(Color.red);
KON.length;
kon[i]=newJButton(KON[i]);
panel4.add(kon[i]);
kon[i].setForeground(Color.magenta);
kon[4].setForeground(Color.red);
kon[9].setForeground(Color.red);
kon[14].setForeground(Color.red);
kon[19].setForeground(Color.red);
kon[0].setForeground(Color.blue);
kon[24].setForeground(Color.blue);
kon[5].setForeground(Color.blue);
kon[10].setForeground(Color.blue);
kon[15].setForeground(Color.blue);
kon[20].setForeground(Color.blue);
KO.length;
ko[i]=newJButton(KO[i]);
panel5.add(ko[i]);
ko[i].setForeground(Color.red);
ko[0].setForeground(Color.blue);
ko[1].setForeground(Color.blue);
ko[2].setForeground(Color.blue);
ko[6].setForeground(Color.blue);
ko[7].setForeground(Color.blue);
ko[8].setForeground(Color.blue);
ko[12].setForeground(Color.blue);
ko[13].setForeground(Color.blue);
ko[14].setForeground(Color.blue);
ko[18].setForeground(Color.blue);
ko[19].setForegrou
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA 模拟 科学 计算器