I have a school project where we need to create a program to convert a number into binary but i cant seem to get them to work together. they will compile but wont actually get out the right answer my toString() method works it just isin't getting the decimal the user entered or the binary from the convertToBinary so i'm not sure where it is failing. Any Help would be great. Driver and Method below! thanks!
Driver:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
class DecimalConverter extends JPanel{
//Sets up the Window
public DecimalConverter(){
JFrame window = new JFrame("Binary To Decimal");
//exit program when window closes
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//WINDOW COMPONENETS:
JLabel lblPrompt = new JLabel("Enter your number to convert: ");
JLabel lblBinary = new JLabel("Binary: ");
JTextField txtDecimal = new JTextField();
JButton btnToBinary = new JButton("To Binary");
//SET POSITIONS
lblPrompt.setBounds(40, 40, 200, 30);
txtDecimal.setBounds(250, 40, 100, 30);
lblBinary.setBounds(40, 80, 300, 30);
btnToBinary.setBounds(250, 120, 100, 30);
setLayout(null);
add(lblPrompt);
add(txtDecimal);
add(lblBinary);
add(btnToBinary);
window.add(this);
window.setSize(400, 200);
window.setVisible(true);
//Event for button
btnToBinary.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
String str = txtDecimal.getText();
DecimalBinary b = new DecimalBinary();
lblBinary.setText(b.toString());
}//ends Action Performed
}//Ends ActionListener
);//End Event
}//End Constructor
public static void main(String args[]){
new DecimalConverter();
}//ends main
}//End Class
Method:
class DecimalBinary{
private String decimal = "0";
private String binary = "";
private int dec;
public void setDecimal(String decimal){
int dec = Integer.parseInt(decimal);
convertToBinary(dec);
}
public String convertToBinary(int dec){
int pow = 128;
while (dec > 0){
if (dec >= pow){
binary += "1";
dec = dec - pow;
}
else if (dec < pow){
binary += "0";
}
pow = pow / 2;
}
return decimal;
}
public String toString(){
return decimal + " is " + binary + " in binary";
}
}