📄 calculatorjframe.java
字号:
.addComponent(bclr, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(b3, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 52, Short.MAX_VALUE) .addComponent(b6, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 52, Short.MAX_VALUE) .addComponent(b9, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 52, Short.MAX_VALUE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) .addComponent(mul, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 54, Short.MAX_VALUE) .addComponent(b16, javax.swing.GroupLayout.PREFERRED_SIZE, 54, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(div, javax.swing.GroupLayout.DEFAULT_SIZE, 54, Short.MAX_VALUE) .addComponent(sub, javax.swing.GroupLayout.DEFAULT_SIZE, 54, Short.MAX_VALUE)))) .addContainerGap()) .addComponent(jSeparator1, javax.swing.GroupLayout.DEFAULT_SIZE, 272, Short.MAX_VALUE) .addGroup(layout.createSequentialGroup() .addContainerGap() .addComponent(b0, javax.swing.GroupLayout.PREFERRED_SIZE, 65, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(point, javax.swing.GroupLayout.PREFERRED_SIZE, 59, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(equalSign, javax.swing.GroupLayout.PREFERRED_SIZE, 52, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(add, javax.swing.GroupLayout.DEFAULT_SIZE, 54, Short.MAX_VALUE) .addContainerGap()) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addComponent(text1, javax.swing.GroupLayout.PREFERRED_SIZE, 42, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(14, 14, 14) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(bce, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(b16, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(bbksp, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(bclr, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(b7, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(b8, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(div, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(b9, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(b4, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(b5, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(mul, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(b6, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(b1, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(b2, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(sub, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(b3, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(point, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(equalSign, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(b0, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(add, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 14, Short.MAX_VALUE) .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, 21, javax.swing.GroupLayout.PREFERRED_SIZE)) ); pack(); }// </editor-fold>//GEN-END:initComponents private void b16MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_b16MouseClicked// TODO 将在此处添加您的处理代码: if (text1.getText().equals(new String("0"))) return; text1.setText(new String("-(") + text1.getText() + new String(")")); if (mybool == false) a = a * (-1.0); else b = b * (-1.0); }//GEN-LAST:event_b16MouseClicked private void bbkspMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_bbkspMouseClicked// TODO 将在此处添加您的处理代码: String s = text1.getText(); s = s.substring(0, s.length()-1); text1.setText(s); if (mybool == false) a = Double.parseDouble(text1.getText()); else b = Double.parseDouble(text1.getText()); }//GEN-LAST:event_bbkspMouseClicked private void bceMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_bceMouseClicked// TODO 将在此处添加您的处理代码: text1.setText(new String("")); if (mybool == false) { a = 0.0; } else { b = 0.0; } }//GEN-LAST:event_bceMouseClicked private void bclrMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_bclrMouseClicked// TODO 将在此处添加您的处理代码: text1.setText(new String("")); myClear(); }//GEN-LAST:event_bclrMouseClicked private void pointMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_pointMouseClicked// TODO 将在此处添加您的处理代码: text1.setText(text1.getText() + new String(".")); }//GEN-LAST:event_pointMouseClicked private void equalSignMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_equalSignMouseClicked// TODO 将在此处添加您的处理代码: text1.setText(new String("")); if (mybool == true) { switch (what) { case '+': result = a + b; break; case '-': java.math.BigDecimal one = new java.math.BigDecimal(a); java.math.BigDecimal two = new java.math.BigDecimal(b); result = one.subtract(two).doubleValue(); break; case '*': result = a * b; break; case '/': result = a / b; break; } } else { result = a; } int i = (int)result; if (result - i == 0.0) text1.setText(new String("") + i); else { /*String s = new String("") + result; int p = s.indexOf('.'); if ((s.length() > p + 9) && (s.indexOf('E') == -1) && (s.indexOf('e') == -1)) s = s.substring(0, p + 9); text1.setText(s);*/ text1.setText(new String("") + result); } myClear(); b = 0.0; mybool = false; what = '\u0000'; a = result = Double.parseDouble(text1.getText()); }//GEN-LAST:event_equalSignMouseClicked private void divMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_divMouseClicked// TODO 将在此处添加您的处理代码: text1.setText(new String("")); mybool = true; what = '/'; }//GEN-LAST:event_divMouseClicked private void mulMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_mulMouseClicked// TODO 将在此处添加您的处理代码: text1.setText(new String("")); mybool = true; what = '*'; }//GEN-LAST:event_mulMouseClicked private void subMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_subMouseClicked// TODO 将在此处添加您的处理代码: text1.setText(new String("")); mybool = true; what = '-'; }//GEN-LAST:event_subMouseClicked private void addMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_addMouseClicked// TODO 将在此处添加您的处理代码: text1.setText(new String("")); mybool = true; what = '+'; }//GEN-LAST:event_addMouseClicked private void b9MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_b9MouseClicked// TODO 将在此处添加您的处理代码: myFaction(new String("9")); }//GEN-LAST:event_b9MouseClicked private void b8MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_b8MouseClicked// TODO 将在此处添加您的处理代码: myFaction(new String("8")); }//GEN-LAST:event_b8MouseClicked private void b7MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_b7MouseClicked// TODO 将在此处添加您的处理代码: myFaction(new String("7")); }//GEN-LAST:event_b7MouseClicked private void b6MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_b6MouseClicked// TODO 将在此处添加您的处理代码: myFaction(new String("6")); }//GEN-LAST:event_b6MouseClicked private void b5MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_b5MouseClicked// TODO 将在此处添加您的处理代码: myFaction(new String("5")); }//GEN-LAST:event_b5MouseClicked private void b4MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_b4MouseClicked// TODO 将在此处添加您的处理代码: myFaction(new String("4")); }//GEN-LAST:event_b4MouseClicked private void b3MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_b3MouseClicked// TODO 将在此处添加您的处理代码: myFaction(new String("3")); }//GEN-LAST:event_b3MouseClicked private void b2MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_b2MouseClicked// TODO 将在此处添加您的处理代码: myFaction(new String("2")); }//GEN-LAST:event_b2MouseClicked private void b1MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_b1MouseClicked// TODO 将在此处添加您的处理代码: myFaction(new String("1")); }//GEN-LAST:event_b1MouseClicked private void b0MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_b0MouseClicked// TODO 将在此处添加您的处理代码: myFaction(new String("0")); }//GEN-LAST:event_b0MouseClicked /** * @param args the command line arguments */ public static void main(String args[]) { java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new CalculatorJFrame().setVisible(true); } }); } private double a = 0.0; //第一个操作数据 private double b = 0.0; //第二个操作数据 private double result = 0.0; //运算结果存放处 private boolean mybool = false; //若为false,说明此时正输入a;否则正输入b private char what = '\u0000'; //判断是什么样的运算:+, -, *, / // 变量声明 - 不进行修改//GEN-BEGIN:variables private javax.swing.JButton add; private javax.swing.JButton b0; private javax.swing.JButton b1; private javax.swing.JButton b16; private javax.swing.JButton b2; private javax.swing.JButton b3; private javax.swing.JButton b4; private javax.swing.JButton b5; private javax.swing.JButton b6; private javax.swing.JButton b7; private javax.swing.JButton b8; private javax.swing.JButton b9; private javax.swing.JButton bbksp; private javax.swing.JButton bce; private javax.swing.JButton bclr; private javax.swing.JButton div; private javax.swing.JButton equalSign; private javax.swing.JMenu jMenu1; private javax.swing.JMenuBar jMenuBar1; private javax.swing.JSeparator jSeparator1; private javax.swing.JButton mul; private javax.swing.JButton point; private javax.swing.JButton sub; private javax.swing.JTextField text1; // 变量声明结束//GEN-END:variables }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -