programtocreateasafewith4digitcodes.java
// program to create a safe with 4 digit codes
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.applet.*;
public class Safe extends JApplet implements ActionListener
{
private JButton button[];
private TextField code;
private Label label;
private int comb;
private int number;
private Panel panel1, panel2;
private String status;
private String entered;
public void init()
{
Container cp = getContentPane();
panel1 = new Panel();
cp.add(panel1,"North");
label = new Label("CLOSED");
panel1.add(label); // add the label to the pane
label.setAlignment(Label.LEFT); // set label label to
the left
//text field
code = new TextField(20);
//code.setEditable(false);
panel1.add(code);
panel2 = new Panel();
cp.add(panel2,"Center");
// set grid layout for panel2
panel2.setLayout(new GridLayout(4,3,5,5));
button = new JButton[13];
int i=0;
for (i=0;i<10;i+=1)
{
// array buttons
button[i] = new JButton(Integer.toString(i));
panel2.add(button[i]);
button[i].addActionListener(this);
}
button[10] = new JButton("CLOSE");
button[10] .setForeground(Color.red);
button[10].addActionListener(this);
button[11] = new JButton("OPEN");
button[11] .setForeground(Color.red);
button[11].addActionListener(this);
button[12] = new JButton("NEW CODE");
button[12] .setForeground(Color.red);
button[12].addActionListener(this);
// add remaining buttons to the layout
panel2.add(button[10]);
panel2.add(button[11]);
panel2.add(button[12]);
} // end the naming and positioning of the buttons on the screen
public void actionPerformed(ActionEvent e)
{
// checks if the buttons are pressed
String a;
int num1,num2,num3,num4;
int j;
int tries = 6;
int total = 0;
String passcode = "1234";
String entered="";
int n;
num2 = 1000;
num3=0;
if (total<4)
{
for (j=0;j<10;j+=1)
{
if (e.getSource()==button[10])
{
num1=j;
num3=num1*num2+num3;
num2=num2/10;
total+=1;
a=Integer.toString(num3);
code.setText(a);
}
}
entered=Integer.toString(num3);
code.setText(entered);
}
else
{
label = new Label("LOCKED AND ALARMED");
panel1.add(label); // add the label to the pane
tries = 4;
code.setText(entered);
}
if(e.getSource()==button[10])
{
label = new Label("CLOSED");
panel1.add(label); // add the label to the pane
passcode = passcode;
total =0;
}
if(e.getSource()==button[11])
{
if (tries>0)
{
if ( entered == passcode )
{
label = new Label("OPEN");
panel1.add(label); // add the label to the
pane
tries = 6;
total = 0;
}
else
{
tries = tries - 1;
code.setText("Incorrect code");
label = new Label("CLOSED");
panel1.add(label); // add the label to the
pane
total = 0;
}
}
else
{
label = new Label("ALARMED AND LOCKED");
panel1.add(label); // add the label to the pane
code.setText("Enter new code");
}
}
if(e.getSource()==button[12]);
{
entered="";
total = 0;
while (total<4)
{
for (j=0;j<10;j+=1)
{
if (e.getSource()==button[10])
{
num1=j;
num3=num1*num2+num3;
num2=num2/10;
total+=1;
}
}
entered=Integer.toString(num3);
code.setText(entered);
}
passcode = entered;
tries = 6;
total = 0;
label = new Label("CLOSED");
panel1.add(label); // add the label to the pane
}
}//ends action performed
}// ends
Return to : Java Programming Hints
and Tips