Dudas de Programacion » Java » Java Applet

AYUDA PROGRAMA JAVA EN RFC

(2 posts)
  1. LaloLanda
    Member

    Hola:

    Necesito de su ayuda espero me orienten, estoy armando un programa para poder dar los datos del RFC sin homoclave, ya me salen los apellidos y la fecha de nacimiento pero lo que necesito es poner poner los dias de febrero del 1 al 28, pongo el codigo y espero puedan decirme como hacerle, hasta donde se se utiliza un if para poder realizar la operacion...

    lo que esta comentado no le hagan caso jejeje, gracias!

    import java.io.*;
    import java.awt.*;
    import java.applet.Applet;

    public class RFC extends Applet{
    int a[]= new int [2];
    TextField cNombre, cApaterno, cAmaterno,cCompleto, cCompleto2, cRfc, cLong;
    Choice cDia, cMes, cAño;

    public void init(){
    cNombre= new TextField();
    cApaterno= new TextField();
    cAmaterno= new TextField();
    //cMes=new TextField();
    //cDia=new TextField();
    cCompleto= new TextField();
    cCompleto2= new TextField();
    cRfc= new TextField();
    cLong= new TextField();
    //
    cDia=new Choice();
    cDia.addItem("1");
    cDia.addItem("2");
    cDia.addItem("3");
    cDia.addItem("4");
    cDia.addItem("5");
    cDia.addItem("6");
    cDia.addItem("7");
    cDia.addItem("8");
    cDia.addItem("9");
    cDia.addItem("10");
    cDia.addItem("11");
    cDia.addItem("12");
    cDia.addItem("13");
    cDia.addItem("14");
    cDia.addItem("15");
    cDia.addItem("16");
    cDia.addItem("17");
    cDia.addItem("18");
    cDia.addItem("19");
    cDia.addItem("20");
    cDia.addItem("21");
    cDia.addItem("22");
    cDia.addItem("23");
    cDia.addItem("24");
    cDia.addItem("25");
    cDia.addItem("26");
    cDia.addItem("27");
    cDia.addItem("28");
    cDia.addItem("29");
    cDia.addItem("30");
    cDia.addItem("31");
    //
    cMes= new Choice();
    cMes.addItem("01");
    cMes.addItem("02");
    cMes.addItem("03");
    cMes.addItem("04");
    cMes.addItem("05");
    cMes.addItem("06");
    cMes.addItem("07");
    cMes.addItem("08");
    cMes.addItem("09");
    cMes.addItem("10");
    cMes.addItem("11");
    cMes.addItem("12");
    //
    cAño=new Choice();
    cAño.addItem("1960");
    cAño.addItem("1961");
    cAño.addItem("1962");
    cAño.addItem("1963");
    cAño.addItem("1964");
    cAño.addItem("1965");
    cAño.addItem("1966");
    cAño.addItem("1967");
    cAño.addItem("1968");
    cAño.addItem("1969");
    cAño.addItem("1970");
    cAño.addItem("1971");
    cAño.addItem("1972");
    cAño.addItem("1973");
    cAño.addItem("1974");
    cAño.addItem("1975");
    cAño.addItem("1976");
    cAño.addItem("1977");
    cAño.addItem("1978");
    cAño.addItem("1979");
    cAño.addItem("1980");
    cAño.addItem("1981");
    cAño.addItem("1982");
    cAño.addItem("1983");
    cAño.addItem("1984");
    cAño.addItem("1985");
    cAño.addItem("1986");
    cAño.addItem("1987");
    cAño.addItem("1988");
    cAño.addItem("1989");
    cAño.addItem("1990");
    cAño.addItem("1991");
    cAño.addItem("1992");
    cAño.addItem("1993");
    //
    add(cNombre);
    add(cApaterno);
    add(cAmaterno);
    add(cDia);
    add(cMes);
    add(cAño);
    add(cCompleto);
    add(cCompleto2);
    add(cRfc);
    add(cLong);
    //
    resize(1000,800);
    repaint();
    }
    public void paint(Graphics g)
    {
    g.setFont(new Font("Papyrus",Font.BOLD, 15));
    g.setColor(Color.black);
    g.drawString("Registro RFC",320,40);
    setBackground(Color.green);
    //
    cNombre.setBounds(80,80,120,20);
    g.drawString("Nombre:",10,100);
    cApaterno.setBounds(110,110,120,20);
    g.drawString("A. Paterno:",10,130);
    cAmaterno.setBounds(140,140,120,20);
    g.drawString("A. Materno:",10,160);
    cDia.setBounds(330,70,120,20);
    g.drawString("Dia:",290,90);
    cMes.setBounds(330,110,120,20);
    g.drawString("Mes:",290,120);
    cAño.setBounds(340,150,120,20);
    g.drawString("Año:",290,160);
    cCompleto.setBounds(160,210,220,20);
    g.drawString("Nombre Completo:",10,250);
    cCompleto2.setBounds(160,250,220,20);
    g.drawString("RFC:",100,300);
    cRfc.setBounds(160,280,220,20);
    g.drawString("Longitud:",500,200);
    cLong.setBounds(580,200,100,20);
    }
    public boolean action(Event evt, Object obj)
    {
    if(evt.target instanceof Choice){
    String a=cNombre.getText();
    String b=cApaterno.getText();
    String c=cAmaterno.getText();
    cCompleto.setText(""+a.toUpperCase()+" "+b.toUpperCase()+" "+c.toUpperCase());
    }
    if(evt.target instanceof Choice){
    String a=cNombre.getText();
    String b=cApaterno.getText();
    String c=cAmaterno.getText();
    cCompleto2.setText(""+a.toLowerCase()+" "+b.toLowerCase()+" "+c.toLowerCase());
    }
    if(evt.target instanceof Choice){
    String a=cNombre.getText();
    String b=cApaterno.getText();
    String c=cAmaterno.getText();
    cLong.setText(a.length()+" "+b.length()+" "+c.length());
    }
    if(evt.target instanceof Choice){
    String a=cNombre.getText();
    String b=cApaterno.getText();
    String c=cAmaterno.getText();
    cRfc.setText (b.substring(0,2).toUpperCase()+c.substring(0,1).toUpperCase()+a.substring(0,1).toUpperCase()+" - "+cAño.getSelectedItem().substring(2,4)+cMes.getSelectedItem()+cDia.getSelectedItem());
    }
    /*if(evt.target instanceof Choice){
    String d=cMes.getText();
    cMes.setText(d.substring(0,2).toUpperCase());
    } */

    return true;
    }
    }

    Posted 1 year ago #


  2. Buenas!

    Lo primero de todo, aunque no es relevante, he tenido que mirar en google lo que es RFC, entiendo que será el Registro Federal de Contribuyentes de México...

    Por otro lado no entiendo muy bien tu duda, y hay partes de tu código bastante mejorables creo yo. Para las fechas sería mas recomendable y mas cómodo que usases un componente calendario directamente, por ejemplo: http://microba.sourceforge.net/

    En caso de querer usar esos campos Choice, la manera de cargarlos es poco eficiente:
    for(int i=1; i <= 12; i++)
    {
    cMes= new Choice();
    cMes.addItem(i);
    }

    Lo mismo para los años, etc.

    Los días se deberían de cargar en función del mes elegido, con un Listener en el Combo de los meses, etc.

    De todas maneras, como te he dicho yo usaría un Calendario o un DatePicker, buscando en google "Calendar Swing" encontrarás muchos.

    Un saludo

    Saludos
    Posted 1 year ago #

Reply

You must log in to post.

1,070 posts in 437 topics over 40 months by 388 of 892 members. Latest: lalala, nijh1, jasu

Acerca de...

Dudas de Programación es una Web, dentro del proyecto aulambra.com que nace con la idea de propocionar un foro de consultas sobre diferentes temas de programación. Orientado a ayudar a los internautas hispano-hablantes en Internet.

Ir al Blog de Linea de Código

Otras Webs