Flores Martínez Isabela

A mi me tocó investigar sobre password, había que agregarlo al programa de la calculadora, una vez que ingresas el password correctamente te manda directo a la calculadora, para esto hay que crear dos códigos, uno en le que se encuentra todo el codigo para el password y el otro de la calculadora al cual después con un action listener le activamos la función del password.

Aquí el código del password:

//* @author isabela

//*/

package tercer.parcial;;

import java.awt.*;

import java.awt.event.*;

import java.text.ParseException;

import java.util.logging.Level;

import java.util.logging.Logger;

import javax.swing.*;

public class pass{

public pass()throws ParseException{

//Creas el frame

JFrame frame=new JFrame("Contraseña");

//Añandes el frame

JDesktopPane a=new JDesktopPane();

//creas las equitetas

JLabel nomb=new JLabel("Usuario");

JLabel cont=new JLabel("Contraseña");

JLabel pal=new JLabel("Ingrese su Usuario y Contraseña");

JButton bot=new JButton("Entrar");

JButton bt=new JButton("Salir");

//Se crean los campos para llenar el text field para el nombre y el password field para la contraseña

final JPasswordField pass=new JPasswordField(10);

final JTextField nom=new JTextField(15);

//Se establecen las coordenadas de los campos (separa del eje x)(separa del eje y)(longitud)(altura)

//son las coordenadas y tamaño de las etiquetas

nomb.setBounds(10,50,70,30);

cont.setBounds(200,50,100,30);

pal.setBounds(10,10,300,30);

bot.setBounds(280,90,100,40);

bt.setBounds(70,90,100,40);

//ahora estos son del Text y del password

pass.setBounds(280,50,125,30);

nom.setBounds(70,50,125,30);

//se añaden al frame

a.add(nomb);

a.add(cont);

a.add(pal);

a.add(bot);

a.add(pass);

a.add(nom);

a.add(bt);

//forma y tamaño del frame

a.setBackground(Color.WHITE);

frame.add(a);

frame.setSize(450,175);

frame.setLocationRelativeTo(null);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.setVisible(true);

bot.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

if(String.valueOf(nom.getText()).compareTo("Isabela")==0 &&

String.valueOf(pass.getPassword()).compareTo("constelacion")==0){

examen_final contra=null;

try {

contra=new examen_final();

} catch (ParseException ex) {

Logger.getLogger(pass.class.getName()).log(Level.SEVERE, null, ex);

}

}else{

JOptionPane.showMessageDialog(null,"Contraseña o Nombre Incorrectos");

}

}

});

bt.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

System.exit(0);

}

});

}

public static void main(String[]args)throws ParseException{

pass obj=new pass();

}

}

Después se crea el programa al cuál se va a ligar la ventana de password:

package tercer.parcial;

import java.awt.Color;

import java.awt.event.*;

import java.text.DecimalFormat;

import java.text.ParseException;

import javax.swing.*;

import javax.swing.text.MaskFormatter;

/**

*

* @author isa

*/

public class examen_final {

private JCheckBox c1,c2;

public examen_final() throws ParseException{

final JRadioButton masc,fem;

JLabel sex=new JLabel("Genero");

masc =new JRadioButton("H");

fem =new JRadioButton("M");

//

final JLabel cua=new JLabel("Ciclo");

final JComboBox ciclo=new JComboBox();

ciclo.addItem(" ");

ciclo.addItem("Primavera 2011");

ciclo.addItem("Verano 2011");

ciclo.addItem("Otoño 2011");

ciclo.addItem("Primavera 2012");

ciclo.addItem("Verano 2012");

ciclo.addItem("Otoño 2012");

ciclo.addItem("Primavera 2013");

ciclo.addItem("Verano 2013");

ciclo.addItem("Otoño 2013");

//

JFrame frame=new JFrame("Calcula tu Calificacion");

JDesktopPane esc=new JDesktopPane();

//

JLabel examen=new JLabel("Examen");

JLabel practica=new JLabel("Practica");

JLabel promedios=new JLabel("Promedios");

JLabel parcial=new JLabel("Parcial");

JLabel alum=new JLabel("Nombre del alumno");

JLabel cuen=new JLabel("No. Cuenta");

JLabel fecha=new JLabel("Fecha");

//genero

JLabel res=new JLabel("Turno");

c1=new JCheckBox("Matutino");

c2=new JCheckBox("Vespertino");

//

JLabel epromedio1=new JLabel("Parcial 1");

JLabel prom1=new JLabel("1° Parcial");

JLabel exam1=new JLabel("60%");

JLabel pra1=new JLabel("40%");

//fin etiquetas primer parcial

JLabel epromedio2=new JLabel("Parcial 2");

JLabel prom2=new JLabel("2° Parcial");

JLabel exam2=new JLabel("70%");

JLabel pra2=new JLabel("30%");

//fin etiquetas segundo parcial

JLabel epromedio3=new JLabel("Parcial 3");

JLabel prom3=new JLabel("3° Parcial");

JLabel exam3=new JLabel("40");

JLabel pra3=new JLabel("60%");

//fin etiquetas tercer parcial

JLabel epromedio=new JLabel("PROMEDIO FINAL");

//

final JTextField promedio1=new JTextField();

final JTextField promedio2=new JTextField();

final JTextField promedio3=new JTextField();

final JTextField promedio=new JTextField();

final JFormattedTextField exa1=new JFormattedTextField();

final JFormattedTextField exa2=new JFormattedTextField();

final JFormattedTextField exa3=new JFormattedTextField();

final JFormattedTextField prac1=new JFormattedTextField();

final JFormattedTextField prac2=new JFormattedTextField();

final JFormattedTextField prac3=new JFormattedTextField();

final JTextArea tea=new JTextArea();

//final JTextField =new JTextField();

JButton calcular=new JButton("Calcular");

JButton nuevo=new JButton("Nuevo");

//Primer parcial

epromedio1.setBounds(10,150,100,30);

promedio1.setBounds(370,150,100,30);

prom1.setBounds(300, 150, 100, 30);

exam1.setBounds(75,150, 100, 30);

exa1.setBounds(100,150, 50, 30);

pra1.setBounds(200,150, 100, 30);

prac1.setBounds(225, 150, 50, 30);

//Segundo Parcial

epromedio2.setBounds(10,215,100,30);

promedio2.setBounds(370,215,100,30);

prom2.setBounds(300, 215, 100, 30);

exam2.setBounds(75, 215, 100, 30);

exa2.setBounds(100, 215, 50, 30);

pra2.setBounds(200, 215, 100, 30);

prac2.setBounds(225, 215, 50, 30);

//Tercer Parcial

epromedio3.setBounds(10,290,100,30);

promedio3.setBounds(370,290,100,30);

prom3.setBounds(300, 290, 100, 30);

exam3.setBounds(75, 290, 100, 30);

exa3.setBounds(100, 290, 50, 30);

pra3.setBounds(200, 290, 100, 30);

prac3.setBounds(225, 290, 50, 30);

//Promedio final

epromedio.setBounds(500,290,100,30);

promedio.setBounds(600,290,100,30);

//

examen.setBounds(100, 110, 100, 30);

practica.setBounds(200, 110, 100, 30);

promedios.setBounds(300, 110, 100, 30);

parcial.setBounds(10,110,100,30);

//botones

calcular.setBounds(600,350,90,40);

nuevo.setBounds(500,350,90,40);

//

alum.setBounds(5,10,150,30);

fecha.setBounds(425,10,150,30);

cuen.setBounds(5,65,100,30);

//turno

res.setBounds(550,10,80,30);

c1.setBounds(590,10,85,30);

c2.setBounds(675,10,100,30);

//combo

ciclo.setBounds(275,65,100,30);

cua.setBounds(180,65,100,30);

//Formato de fecha

MaskFormatter fech=new MaskFormatter("##-##-####");

fech.setPlaceholderCharacter('_');

final JFormattedTextField fe=new JFormattedTextField(fech);

esc.add(fe);

fe.setBounds(475,10,70,30);

//Cuenta

MaskFormatter cu=new MaskFormatter("########");

cu.setPlaceholderCharacter('_');

final JFormattedTextField cue=new JFormattedTextField(cu);

cue.setBounds(75,65,90,30);

esc.add(cue);

//Nombre

final JTextField nom=new JTextField();

esc.add(nom);

nom.setBounds(120,10,150,30);

//Area de Texto

tea.setBounds(550,65,200,140);

esc.add(tea);

//

sex.setBounds(275,10,50,30);

masc.setBounds(325,10,40,30);

fem.setBounds(375,10,40,30);

//se agregan al frame

esc.add(epromedio1);

esc.add(promedio1);

esc.add(epromedio2);

esc.add(promedio2);

esc.add(epromedio3);

esc.add(promedio3);

esc.add(epromedio);

esc.add(promedio);

esc.add(calcular);

esc.add(prom2);

esc.add(prom3);

esc.add(prom1);

esc.add(exam1);

esc.add(exam2);

esc.add(exam3);

esc.add(examen);

esc.add(practica);

esc.add(promedios);

esc.add(exa1);

esc.add(exa2);

esc.add(exa3);

esc.add(parcial);

esc.add(pra1);

esc.add(pra2);

esc.add(pra3);

esc.add(prac1);

esc.add(prac2);

esc.add(prac3);

esc.add(nuevo);

esc.add(alum);

esc.add(cuen);

esc.add(fecha);

esc.add(res);

esc.add(c1);

esc.add(c2);

esc.add(sex);

esc.add(masc);

esc.add(fem);

esc.add(ciclo);

esc.add(cua);

//esc.add();para agregarlos al frame

esc.setBackground(Color.WHITE);

frame.add(esc);

frame.setSize(800,450);

frame.setLocationRelativeTo(null);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.setVisible(true);

//

calcular.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

DecimalFormat form=new DecimalFormat("##.##");

String cad="";

if (c1.isSelected()==true) {

cad=cad+"Matutino";

}else if (c2.isSelected()==true){

cad=cad+"Vespertino";

}

String ca="";

if(masc.isSelected()==true){

ca=ca+"Masculino";

}else if(fem.isSelected()==true){

ca=ca+"Femenino";

}

double p1,p2,p3,e1=0,e2=0,e3=0,pr1=0,pr2=0,pr3=0,uno,dos,tres,p;

//

e1=Double.parseDouble(exa1.getText());

pr1=Double.parseDouble(prac1.getText());

e2=Double.parseDouble(exa2.getText());

pr2=Double.parseDouble(prac2.getText());

e3=Double.parseDouble(exa3.getText());

pr3=Double.parseDouble(prac3.getText());

e1=(e1*.6);

e2=e2*.7;

e3=e3*.4;

pr1=pr1*.4;

pr2=pr2*.3;

pr3=pr3*.6;

uno=e1+pr1;

dos=e2+pr2;

tres=e3+pr3;

promedio1.setText(form.format(uno));

promedio2.setText(form.format(dos));

promedio3.setText(form.format(tres));

p1=Double.parseDouble(promedio1.getText());

p2=Double.parseDouble(promedio2.getText());

p3=Double.parseDouble(promedio3.getText());

p=(p1+p2+p3)/3;

promedio.setText(form.format(p));

tea.setText("Los Datos del Alumno son:"+"\n"+"Nombre: "+nom.getText()+"\n"

+ "Numero de Cuenta: "+cue.getText()+"\n"

+ "Promedio Final: "+promedio.getText()+"\n"

+ "Genero: "+ca+"\n"

+ "Fecha de Consulta: "+fe.getText()+"\n"

+ "Turno: "+cad+"\n"

+ "Ciclo: "+(ciclo.getSelectedItem().toString()));

}

});

nuevo.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

promedio.setText("");

exa1.setText("");

exa2.setText("");

exa3.setText("");

prac1.setText("");

prac2.setText("");

prac3.setText("");

promedio1.setText("");

promedio2.setText("");

promedio3.setText("");

nom.setText("");

cue.setText("");

fe.setText("");

tea.setText("");

c2.setSelected(false);

c1.setSelected(false);

masc.setSelected(false);

fem.setSelected(false);

ciclo.setSelectedIndex(0);

}

});

}

public static void main(String[]args) throws ParseException{

examen_final obj=new examen_final();

}

}