Areej Nasim Oop Assignment 03
Areej Nasim Oop Assignment 03
Assignment number 03
Submitted by:
Areej Nasim
Submitted to:
Mam Mehak Sheikh
---------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------
Theory Assignment # 03
Individual Assignment
------------------------------------------------------------------------------------------------------------------------------------------
Question:
Create a Simple Calculator e.g. Windows Calculator. Use Net-beans to create window forms with
single text fields and provide functionality for plus, minus multiply, equals to, C, 1,2, MR, M+,
MC. Write code behind buttons to take values from text field and implement the intended
functionality.
SOLUTION:
public pnlCalculator() {
initComponents();
@SuppressWarnings("unchecked")
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel1Layout.createSequentialGroup()
.addGap(0, 0, Short.MAX_VALUE)
);
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addComponent(txtResult, javax.swing.GroupLayout.PREFERRED_SIZE, 150,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 0, Short.MAX_VALUE))
);
jPanel2.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());
});
btnPlusMinus.setText("+/-");
btnPlusMinus.addMouseListener(new java.awt.event.MouseAdapter() {
btnPlusMinusMouseClicked(evt);
});
btnClear.setText("CE");
btnClear.addMouseListener(new java.awt.event.MouseAdapter() {
btnClearMouseClicked(evt);
});
btnPlus.addMouseListener(new java.awt.event.MouseAdapter() {
btnPlusMouseClicked(evt);
});
btnMinus.setText("-");
btnMinus.addMouseListener(new java.awt.event.MouseAdapter() {
btnMinusMouseClicked(evt);
});
btnMultiplication.setText("*");
btnMultiplication.addMouseListener(new java.awt.event.MouseAdapter() {
btnMultiplicationMouseClicked(evt);
});
btnDivision.setText("/");
btnDivision.addMouseListener(new java.awt.event.MouseAdapter() {
btnDivisionMouseClicked(evt);
});
btnEqual.setText("=");
btnEqual.addMouseListener(new java.awt.event.MouseAdapter() {
btnEqualMouseClicked(evt);
});
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel1, javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPanel2, javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 12,
Short.MAX_VALUE)
.addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap())
);
pack();
}// </editor-fold>
else {
value2 = 0;
txtResult.setText("");
if(!(txtResult.getText().isEmpty())){
operator = "plus";
txtResult.setText(txtResult.getText()+ "+");
if(!(txtResult.getText().isEmpty())){
operator = "minus";
txtResult.setText(txtResult.getText()+ "-");
if(!(txtResult.getText().isEmpty())){
operator = "multiplication";
txtResult.setText(txtResult.getText()+ "*");
if(!(txtResult.getText().isEmpty())){
operator = "division";
txtResult.setText(txtResult.getText()+ "/");
}
private void btnEqualMouseClicked(java.awt.event.MouseEvent evt) {
double answer = 0;
if(operator == "plus")
else if(operator=="minus")
answer = value1/value2;
txtResult.setText(Result);
try {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
java.util.logging.Logger.getLogger(pnlCalculator.class.getName()).log(java.util.logging.Level.SEVERE, null,
ex);
java.util.logging.Logger.getLogger(pnlCalculator.class.getName()).log(java.util.logging.Level.SEVERE, null,
ex);
java.util.logging.Logger.getLogger(pnlCalculator.class.getName()).log(java.util.logging.Level.SEVERE, null,
ex);
//</editor-fold>
java.awt.EventQueue.invokeLater(new Runnable() {
new pnlCalculator().setVisible(true);
});
OUTPUT: