Foros del Web » Programación para mayores de 30 ;) » Java »

Ayuda con programa....RFC

Estas en el tema de Ayuda con programa....RFC en el foro de Java en Foros del Web. Hola amigos...perdon por la molestia, apenas estoy empezando en esto de programacion y quisiera saber si alguien me puede ayudar a concluir este programa que ...
  #1 (permalink)  
Antiguo 13/02/2011, 10:30
 
Fecha de Ingreso: febrero-2011
Ubicación: mexico
Mensajes: 20
Antigüedad: 13 años, 2 meses
Puntos: 0
Ayuda con programa....RFC

Hola amigos...perdon por la molestia, apenas estoy empezando en esto de programacion y quisiera saber si alguien me puede ayudar a concluir este programa que crea el RFC de una persona..aqui les dejo el codigo base que me dieron..y quisiera que me ayudaran un poco...para ir aprendiendo..de antemano gracias!.
Cita:
// Importacion de la librerias para la creacioon y desarrollo de interfaz GUI
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class POOU1P0005 extends JPanel {
public POOU1P0005(){
setLayout(null);


JLabel JLApellidoPaterno = new JLabel("Apellido paterno", SwingConstants.LEFT);
JLApellidoPaterno.setBounds(new Rectangle(10,10,120,25));


add(JLApellidoPaterno);

JTextField JTApellidoPaterno = new JTextField();
JTApellidoPaterno.setBounds(new Rectangle(135,10,230,25));
add(JTApellidoPaterno);

JLabel JLApellidoMaterno = new JLabel("Apellido materno",SwingConstants.LEFT);
JLApellidoMaterno.setBounds(new Rectangle(10,40,120,25));
add(JLApellidoMaterno);

JTextField JTApellidoMaterno = new JTextField();
JTApellidoMaterno.setBounds(new Rectangle(135,40,230,25));
add(JTApellidoMaterno);

JLabel JLNombre = new JLabel ("Nombre", SwingConstants.LEFT);
JLNombre.setBounds(new Rectangle(10,70,120,25));
add(JLNombre);

JTextField JTNombre = new JTextField();
JTNombre.setBounds(new Rectangle(135,70,230,26));
add(JTNombre);

JLabel JLFechaNacimiento = new JLabel("FechaNacimiento", SwingConstants.LEFT);
JLFechaNacimiento.setBounds(new Rectangle(10,100,120,25));
add(JLFechaNacimiento);

JTextField JTFechaNacimiento = new JTextField();
JTFechaNacimiento.setBounds(new Rectangle(135,100,230,25));
add(JTFechaNacimiento);

JLabel JLEFechaNacimiento = new JLabel("Ejemplo: 31 de Diciembre de 1970", SwingConstants.LEFT);
JLEFechaNacimiento.setBounds(new Rectangle(80,120,200,25));
add(JLEFechaNacimiento);

JButton JBProceso = new JButton("Proceso");
JBProceso.setBounds(new Rectangle(150,160,150,25));
add(JBProceso);

}

public static void main (String[] args) {
JFrame Ventana = new JFrame("POO -> POOU1P0005 RFC)");
Ventana.setDefaultCloseOperation(Ventana.EXIT_ON_C LOSE);
Ventana.getContentPane().add(new POOU1P0005(), BorderLayout.CENTER);
Ventana.setSize(400,300);
Ventana.setLocationRelativeTo(null);
Ventana.setVisible(true);
}


}
  #2 (permalink)  
Antiguo 13/02/2011, 15:29
 
Fecha de Ingreso: febrero-2011
Mensajes: 27
Antigüedad: 13 años, 2 meses
Puntos: 1
Respuesta: Ayuda con programa....RFC

entiendo que tu problema ahora mismo es disparar eventos con el botón JBProceso... para ello tendrás que hacer algo así como:

JBProceso.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent unEvento){
tuFuncionDeProcesarAqui();
}});

Espero haberte ayudado
  #3 (permalink)  
Antiguo 14/02/2011, 15:09
 
Fecha de Ingreso: noviembre-2010
Mensajes: 40
Antigüedad: 13 años, 5 meses
Puntos: 1
Respuesta: Ayuda con programa....RFC

Bueno lo que tienes hasta el momento es solo una interfaz con etiquetas y cajas de texto donde el usuario ingresará los datos. Como sabes el RFC consta de las dos primeras letras del primer apellido, la primera del segundo, la primera del nombre así como los ultimos dos digitos del año de nacimiento, dos del mes y dos del día.

Así que es muy facil, solo tienes que obtener lo que ingresa el usuario en las JTextField con un .getText() cada vez que se oprime el botón, como lo indicaron en la respuesta anterior, p.e.
Código:
JBProceso.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent unEvento){
String nombre = JTApellidoPaterno.getText();}});
Y así para cada caja de texto. Después habría que sacar un substring de aquellos string, lo puedes hacer con
Código:
 String subNombre = nombre.substring(0, 2);
Esto te extraerá los dos primeros caracteres de la cadena nombre. Para las demás substring deberás cambiar la posición de comienzo y de final de la subcadena que quieres extraer.

Y por ultimo solo restaría concatenar todas las substring que sacaste:

Código:
String rfc = subNombre+""+subAPaterno.........
Y así obtienes en la ultima variable el RFC, el cual puedes mostrar con un JOptionPane o con una simple impresion en pantalla. Espero haberte ayudado.
  #4 (permalink)  
Antiguo 14/02/2011, 19:25
 
Fecha de Ingreso: febrero-2011
Ubicación: mexico
Mensajes: 20
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Ayuda con programa....RFC

y como uso el Joptionpane?
donde debe estar ubicado...perdon por mi ignorancia comprenderan que apenas estoy iniciando en esto...y no hemos visto eso en clase...
por favor tengame paciencia..soy novato..si alguiien me pudiera explicar detalladamente...estaria muy agradecido
no puedo hacer que el JButton jale las funciones...ayuda por favor

Última edición por Raulitho; 14/02/2011 a las 19:40
  #5 (permalink)  
Antiguo 14/02/2011, 20:02
 
Fecha de Ingreso: enero-2008
Mensajes: 614
Antigüedad: 16 años, 4 meses
Puntos: 57
Respuesta: Ayuda con programa....RFC

Cita:
Iniciado por viri31 Ver Mensaje
Como sabes el RFC consta de las dos primeras letras del primer apellido, la primera del segundo, la primera del nombre así como los ultimos dos digitos del año de nacimiento, dos del mes y dos del día.
Incorrecto!

Se calcula con la primer letra del primer apellido mas la PRIMER VOCAL del primer apellido; primer letra del segundo apellido y primer letra del primer nombre (siempre que no sea Jose ni Maria). Ademas, si al unir las 4 letras se forma una palabra, la cuarta letra se tiene que sustituir con una equis.

Todas las reglas (y creo que el codigo) para generar el RFC estan en la pagina del SAT www.sat.gob.mx o de Hacienda www.shcp.gob.mx

Última edición por posman; 14/02/2011 a las 20:43
  #6 (permalink)  
Antiguo 15/02/2011, 09:33
 
Fecha de Ingreso: noviembre-2010
Mensajes: 40
Antigüedad: 13 años, 5 meses
Puntos: 1
Respuesta: Ayuda con programa....RFC

Gracias por la corrección Los JOptionPane son ventanas de diálogo para introducir datos, para mostrar una salida de texto o para esocoger entre varias opciones, dependiendo de la que se adecue a tus necesidades se puede configurar para pedir un dato, cambiar el titulo a la ventana, mostrar un ícono, etc.
Algunos tipos de JOptionPane son: JOptionPane.showMessageDialog(), JOptionPane.showInputDialog(), JOptionPane.showOptionDialog(), JOptionPane.showConfirmDialog(). En tu caso podrias usar un JOptionPane.showMessageDialog() ya que solo vas a mostrar un mensaje que sería la variable final del RFC, donde debe estar ubicado? hasta que ya tengas en la variable el rfc final ya que el JOptionPane recibirá esa variable como parámetro, por ejemplo:

Código:
JOptionPane.showMessageDialog(null, "El RFC es:" + rfc, "Titulo de la ventana", JOptionPane.INFORMATION_MESSAGE);
Puedes checar el API si tienes dudas http://download.oracle.com/javase/1.4.2/docs/api/javax/swing/JOptionPane.html

Y por que no puedes hacer que el botón jale las funciones? podrías mostrar algo de tu código. Espero haber ayudado.

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:48.