Question
Help Creating a Java GUI Calculator! All of the test cases that will come with this calculator are... 1.Look and feel of the calculator. 2.The
Help Creating a Java GUI Calculator!
All of the test cases that will come with this calculator are...
1.Look and feel of the calculator. 2.The 64 bits binary value of the entered number in the number field should be displayed correctly. 3.Should be able to access some help documentation from the menu item Help. Does not have to be the same as the Windows Calculator 4.Should be able to hide and show the calculator using the menu item View. 5.Should be able to copy the content (in the number field) using the menu item Edit. 6.All basic arithmetic operations (+, - , / , *, etc.) must be performed correctly. Results with decimal places or negative values should be displayed appropriately. 7.There is no order of operation expected; if someone has implemented it that way then it is OK either way 8.There should be no interaction of the mouse expected on the binary bits area. 9.Functionality of C, CE and Backspace should be the same as that of windows calculator.
I need you to help add to the code below, use the preffered file names that are found within the program already. Thank you!
//MyCalculatorFrame.java
import javax.swing.*;
import java.awt.BorderLayout;
import javax.swing.GroupLayout;
import javax.swing.GroupLayout.Alignment;
import java.awt.event.*;
public class MyCalculatorFrame extends JFrame implements ActionListener{
// INITALZING VARIABLES
ResultPanel resultTextBox; // this displays the results
NumPanel numPad; // this holds the number buttons
OperationsPanel opPad; // this holds the operations buttons
ConversionPanel conTextBox; // this displays the converted text
RadioButtonPanel radioPad; // this checks what button is pressed to see what to convert
char operation; // this tells us what operation is being used
String num1, mSaved; // these are for memory and operation related stuff
int saved;
int addClicked, subClicked, multClicked, divClicked = 1;
MyCalculatorFrame(){
resultTextBox = new ResultPanel(); // creating object textBox
add(resultTextBox, BorderLayout.NORTH); // add the textBox NORTH of the Window
conTextBox = new ConversionPanel(); // creating object conversion text box
add(conTextBox, BorderLayout.SOUTH);
numPad = new NumPanel(); // create the object for the numberPad
add(numPad); // add the numberPad
GroupLayout gl_numPad = new GroupLayout(numPad); // create group layer for numberPad
numPad.setLayout(gl_numPad); // set the numberPad to the group layer
gl_numPad.setHorizontalGroup( // setting horizontal alignment
gl_numPad.createParallelGroup(Alignment.LEADING) // always need this
.addGroup(gl_numPad.createSequentialGroup() // make a row of bs, c, ce
.addComponent(numPad.aBtn, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
.addComponent(numPad.bBtn, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
.addComponent(numPad.btnBS, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10) // this gap is to separate the buttons
.addComponent(numPad.btnCE, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
.addComponent(numPad.btnC, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
)
.addGroup(gl_numPad.createSequentialGroup() // make a row of 7,8,9
.addComponent(numPad.cBtn, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
.addComponent(numPad.dBtn, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
.addComponent(numPad.btn7, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
.addComponent(numPad.btn8, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
.addComponent(numPad.btn9, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
)
.addGroup(gl_numPad.createSequentialGroup() // make a row of 4,5,6
.addComponent(numPad.eBtn, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
.addComponent(numPad.fBtn, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
.addComponent(numPad.btn4, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
.addComponent(numPad.btn5, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
.addComponent(numPad.btn6, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
)
.addGroup(gl_numPad.createSequentialGroup() // make a row of 1,2,3
.addComponent(numPad.btnblnk1, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
.addComponent(numPad.btnblnk2, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
.addComponent(numPad.btn1, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
.addComponent(numPad.btn2, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
.addComponent(numPad.btn3, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
)
.addGroup(gl_numPad.createSequentialGroup()
.addComponent(numPad.btnblnk3, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
.addComponent(numPad.btnblnk4, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
.addComponent(numPad.btn0, GroupLayout.PREFERRED_SIZE, 170, GroupLayout.PREFERRED_SIZE)
)
);
gl_numPad.setVerticalGroup( // setting vertical alignment
gl_numPad.createParallelGroup(Alignment.LEADING) // always need this
.addGroup(gl_numPad.createSequentialGroup() // create a sequential group of 1,2,3,4,5,6,7,8,9
.addContainerGap()
.addGroup(gl_numPad.createParallelGroup(Alignment.LEADING) // but make sure 7, 8, 9 are parallel
.addComponent(numPad.aBtn, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(numPad.bBtn, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(numPad.btnC, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(numPad.btnCE, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(numPad.btnBS, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
)
.addGap(5)
.addGroup(gl_numPad.createParallelGroup(Alignment.LEADING) // but make sure 7, 8, 9 are parallel
.addComponent(numPad.cBtn, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(numPad.dBtn, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(numPad.btn7, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(numPad.btn8, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(numPad.btn9, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
)
.addGap(5) // adds space between the buttons vertically
.addGroup(gl_numPad.createParallelGroup(Alignment.LEADING) // but make sure 4, 5, 6, are parallel
.addComponent(numPad.eBtn, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(numPad.fBtn, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(numPad.btn4, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(numPad.btn5, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(numPad.btn6, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
)
.addGap(5)
.addGroup(gl_numPad.createParallelGroup(Alignment.LEADING) // but make sure 1, 2, 3, are parallel
.addComponent(numPad.btnblnk1, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(numPad.btnblnk2, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(numPad.btn1, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(numPad.btn2, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(numPad.btn3, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
)
.addGap(5)
.addGroup(gl_numPad.createParallelGroup(Alignment.LEADING)
.addComponent(numPad.btnblnk3, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(numPad.btnblnk4, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(numPad.btn0, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
)
.addGap(5)
.addGroup(gl_numPad.createParallelGroup(Alignment.LEADING) // but make sure 1, 2, 3, are parallel
.addComponent(numPad.aBtn, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(numPad.bBtn, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(numPad.cBtn, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
)
.addGap(5)
.addGroup(gl_numPad.createParallelGroup(Alignment.LEADING) // but make sure 1, 2, 3, are parallel
.addComponent(numPad.dBtn, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(numPad.eBtn, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(numPad.fBtn, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
)
)
);
// initializing actionListener for each button on the NumberPad!
numPad.btn0.addActionListener(this);
numPad.btn1.addActionListener(this);
numPad.btn2.addActionListener(this);
numPad.btn3.addActionListener(this);
numPad.btn4.addActionListener(this);
numPad.btn5.addActionListener(this);
numPad.btn6.addActionListener(this);
numPad.btn7.addActionListener(this);
numPad.btn8.addActionListener(this);
numPad.btn9.addActionListener(this);
numPad.btnC.addActionListener(this);
numPad.btnCE.addActionListener(this);
numPad.btnBS.addActionListener(this);
numPad.aBtn.addActionListener(this);
numPad.bBtn.addActionListener(this);
numPad.cBtn.addActionListener(this);
numPad.dBtn.addActionListener(this);
numPad.eBtn.addActionListener(this);
numPad.fBtn.addActionListener(this);
////////////////////////////////////////////////////////// OPERATIONS PANEL ///////////////////////////////////////////////////
opPad = new OperationsPanel(); // creating operation panel object
add(opPad, BorderLayout.EAST); // adding it
GroupLayout gl_opPad = new GroupLayout(opPad);
opPad.setLayout(gl_opPad);
gl_opPad.setHorizontalGroup( // setting horizontal alignment for operations buttons
gl_opPad.createParallelGroup(Alignment.LEADING)
.addGroup(gl_opPad.createSequentialGroup()
.addComponent(opPad.divButton, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
.addComponent(opPad.rootButton, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addContainerGap()
)
.addGroup(gl_opPad.createSequentialGroup()
.addComponent(opPad.multButton, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
.addComponent(opPad.modButton, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
.addContainerGap()
)
.addGroup(gl_opPad.createSequentialGroup()
.addComponent(opPad.subButton, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
.addComponent(opPad.oneoverxButton, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addContainerGap()
)
.addGroup(gl_opPad.createSequentialGroup()
.addComponent(opPad.addButton, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addGap(10)
.addComponent(opPad.pmButton, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addContainerGap()
)
.addGroup(gl_opPad.createSequentialGroup()
.addComponent(opPad.eButton, GroupLayout.PREFERRED_SIZE, 110, GroupLayout.PREFERRED_SIZE)
.addContainerGap()
)
);
gl_opPad.setVerticalGroup( // setting vertical alignment for operations buttons
gl_opPad.createParallelGroup(Alignment.LEADING)
.addGroup(gl_numPad.createSequentialGroup()
.addContainerGap()
.addGroup(gl_opPad.createParallelGroup()
.addComponent(opPad.divButton, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(opPad.rootButton, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
)
.addGap(5)
.addGroup(gl_opPad.createParallelGroup()
.addComponent(opPad.multButton, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(opPad.modButton, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
)
.addGap(5)
.addGroup(gl_opPad.createParallelGroup()
.addComponent(opPad.subButton, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(opPad.oneoverxButton, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
)
.addGap(5)
.addGroup(gl_opPad.createParallelGroup()
.addComponent(opPad.addButton, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addComponent(opPad.pmButton, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
)
.addGap(5)
.addGroup(gl_opPad.createParallelGroup()
.addComponent(opPad.eButton, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
)
)
);
// adding actionlisteners to each button
opPad.pmButton.addActionListener(this);
opPad.modButton.addActionListener(this);
opPad.addButton.addActionListener(this);
opPad.rootButton.addActionListener(this);
opPad.subButton.addActionListener(this);
opPad.oneoverxButton.addActionListener(this);
opPad.multButton.addActionListener(this);
opPad.divButton.addActionListener(this);
opPad.eButton.addActionListener(this);
////////////////////////////////////////////////////////// RADIO BUTTONS ///////////////////////////////////////////////////
radioPad = new RadioButtonPanel(); // creating radio button object
add(radioPad, BorderLayout.WEST); // adding it to the calculator frame
}
public void radioButtonCheck(){
// these create booleans AT THAT MOMENT to see which button is pressed
boolean d = radioPad.decBtn.isSelected();
boolean h = radioPad.hexBtn.isSelected();
boolean o = radioPad.octBtn.isSelected();
boolean b = radioPad.binBtn.isSelected();
if(d == true){ // if Decimal is selected, print out the Decimal version of text in the CONVERSION BOX
resultTextBox.setTheResult(resultTextBox.getTheNumber());
}
else if(h == true){ // if Hex is selected, print out the Hex version of text in the CONVERSION BOX
int hex = Integer.parseInt(resultTextBox.getTheNumber());
resultTextBox.setTheResult(Integer.toHexString(hex));
}
else if(o == true){ // if Oct is selected, print out the Octal version of text in the CONVERSION BOX
int oct = Integer.parseInt(resultTextBox.getTheNumber());
resultTextBox.setTheResult(Integer.toOctalString(oct));
}
else if(b == true){ // if Binary is selected, print out Binary version of text in the CONVERSION BOX
int bin = Integer.parseInt(resultTextBox.getTheNumber());
resultTextBox.setTheResult(Integer.toBinaryString(bin));
}
boolean qw = radioPad.qWordBtn.isSelected();
boolean dw = radioPad.dWordBtn.isSelected();
boolean wo = radioPad.wordBtn.isSelected();
conTextBox.setTheResult(resultTextBox.getTheNumber(), qw, dw, wo);
}
// actionListener starts HERE
public void actionPerformed(ActionEvent e){
//// NUMBERS PANEL
if(e.getSource() == numPad.btn0){ // puts number 0 as next number in the textbox
String s = resultTextBox.getTheNumber();
resultTextBox.setTheResult(s + "0");
}
else if(e.getSource() == numPad.btn1){ // puts number 1 as next number in the textbox
String s = resultTextBox.getTheNumber();
resultTextBox.setTheResult(s + "1");
}
else if(e.getSource() == numPad.btn2){ // puts number 2 as next number in the textbox
String s = resultTextBox.getTheNumber();
resultTextBox.setTheResult(s + "2");
}
else if(e.getSource() == numPad.btn3){ // puts number 3 as next number in the textbox
String s = resultTextBox.getTheNumber();
resultTextBox.setTheResult(s + "3");
}
else if(e.getSource() == numPad.btn4){ // puts number 4 as next number in the textbox
String s = resultTextBox.getTheNumber();
resultTextBox.setTheResult(s + "4");
}
else if(e.getSource() == numPad.btn5){ // puts number 5 as next number in the textbox
String s = resultTextBox.getTheNumber();
resultTextBox.setTheResult(s + "5");
}
else if(e.getSource() == numPad.btn6){ // puts number 6 as next number in the textbox
String s = resultTextBox.getTheNumber();
resultTextBox.setTheResult(s + "6");
}
else if(e.getSource() == numPad.btn7){ // puts number 7 as next number in the textbox
String s = resultTextBox.getTheNumber();
resultTextBox.setTheResult(s + "7");
}
else if(e.getSource() == numPad.btn8){ // puts number 8 as next number in the textbox
String s = resultTextBox.getTheNumber();
resultTextBox.setTheResult(s + "8");
}
else if(e.getSource() == numPad.btn9){ // puts number 9 as next number in the textbox
String s = resultTextBox.getTheNumber();
resultTextBox.setTheResult(s + "9");
}
else if(e.getSource() == numPad.btnC){ // clears text box
resultTextBox.setTheResult(null);
saved = 0;
}
else if(e.getSource() == numPad.btnCE){ //clears text box + all saved memory
resultTextBox.setTheResult(null);
}
else if(e.getSource() == numPad.btnBS){
String s = resultTextBox.getTheNumber();
String bs = numPad.backSpace(s);
resultTextBox.setTheResult(bs);
}
//// OPERATIONS PANEL *** THEY REPEAT FOR ADD SUB DIV MULT ***
else if(e.getSource() == opPad.addButton){
// in case of repetition
if(addClicked >= 1){ // checks counter
saved += Integer.parseInt(resultTextBox.getTheNumber());
resultTextBox.setTheResult(null);
addClicked++;
}
// if no repetition
else{
num1 = resultTextBox.getTheNumber(); // get the number from text box
saved = Integer.parseInt(num1); // save that number
operation = '+'; // let the equal button know what the last operation was
resultTextBox.setTheResult(null); // clear the text box
addClicked++; // let the repetition checker know how many buttons
}
}
else if(e.getSource() == opPad.subButton){ // this gets the subtraction of the number
// in case of repetition
if(subClicked >= 1){
saved -= Integer.parseInt(resultTextBox.getTheNumber());
resultTextBox.setTheResult(null);
subClicked++;
}
else{
num1 = resultTextBox.getTheNumber();
saved = Integer.parseInt(num1);
operation = '-';
resultTextBox.setTheResult(null);
subClicked++;
}
}
else if(e.getSource() == opPad.multButton){ // this gets the multiple of the number
// in case of repetition
if(multClicked >= 1){
saved *= Integer.parseInt(resultTextBox.getTheNumber());
resultTextBox.setTheResult(null);
multClicked++;
}
else{
num1 = resultTextBox.getTheNumber();
saved = Integer.parseInt(num1);
operation = '*';
resultTextBox.setTheResult(null);
multClicked++;
}
}
else if(e.getSource() == opPad.divButton){ // this gets the division of the number
// in case of repetition
if(divClicked > 1){
saved /= Integer.parseInt(resultTextBox.getTheNumber());
resultTextBox.setTheResult(null);
divClicked++;
}
else{
num1 = resultTextBox.getTheNumber();
saved = Integer.parseInt(num1);
operation = '/';
resultTextBox.setTheResult(null);
divClicked++;
}
}
else if(e.getSource() == opPad.modButton){ // this gets the modulus of the number
num1 = resultTextBox.getTheNumber();
operation = '%';
resultTextBox.setTheResult(null);
}
else if(e.getSource() == opPad.pmButton){ // this gets the plus or minus of the number
String s = resultTextBox.getTheNumber();
int n = Integer.parseInt(s) * (-1);
resultTextBox.setTheResult(Integer.toString(n));
}
//// EQUAL BUTTON
else if(e.getSource() == opPad.eButton){
if(operation == '+'){ // if operation is addition
String second = resultTextBox.getTheNumber(); // get the number from the text box
int num2 = saved + Integer.parseInt(second); // make a variable that holds the saved number + the 2nd number
String result = Integer.toString(num2); // convert the result to a string
resultTextBox.setTheResult(result); // print string onto result text box
operation = ' '; // reset the operation character
addClicked = 0; // reset repetitive counter
radioButtonCheck();
}
else if(operation == '-'){ // if operation is subtraction
String second = resultTextBox.getTheNumber();
int num2 = saved - Integer.parseInt(second);
String result = Integer.toString(num2);
resultTextBox.setTheResult(result);
operation = ' ';
subClicked = 0;
radioButtonCheck();
}
else if(operation == '*'){ // if operation is multiplication
String second = resultTextBox.getTheNumber();
int num2 = saved * Integer.parseInt(second);
String result = Integer.toString(num2);
resultTextBox.setTheResult(result);
operation = ' ';
multClicked = 0;
radioButtonCheck();
}
else if(operation == '/'){ // if operation is division
String second = resultTextBox.getTheNumber();
int num2 = saved / Integer.parseInt(second);
String result = Integer.toString(num2);
resultTextBox.setTheResult(result);
operation = ' ';
divClicked = 0;
radioButtonCheck();
}
else if(operation == '%'){ // if operation is modulus
String second = resultTextBox.getTheNumber();
int num2 = saved % Integer.parseInt(second);
String result = Integer.toString(num2);
resultTextBox.setTheResult(result);
operation = ' ';
radioButtonCheck();
}
radioButtonCheck();
}
}
}
Disable Dword, Word, Byte, but keep the buttons there. Also, no interaction of the mouse on the binary bits area is required. Just display 64 bits for all the items with appropriate bits filled in based on the value in the number field
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started