Buenas tardes a todos, en esta entrada dejare un poco lo que es OpenGL y hare un post sencillo para Java. Lo que haremos es trabajar con un JList, guardaremos nuestros propios objetos en el y desplegaremos la informacion que contienen en diferentes labels, es algo sencillo pero muy util. No trabajare con bases de datos pero de igual manera se haria.
Para comenzar crearemos un nuevo proyecto en NetBeans sin mainclass
Y despues de esto crearemos un packete con nombre cual quiera y crearemos un JFrame, y lo diseñaremos de la siguiente manera
Para comenzar con todo esto, despues de que ya tengamos nuestro diseño anterior, lo que haremos es crear una clase que se llame Usuario, esta clase tendra las propiedades que despliega el form anterior. Primero haremos esto:
Creamos la clase y declaramos esas variables ( por cierto falto el ID, lo agregan como int), despues damos clic derecho ( este es un buen tip jaja), y en insertar codigo damos clic y aparecera esta lista desplegable, y tenemos varias opciones para que netbeans nos agregue codigo, primero le vamos a poner que nos agregue un constructor y seleccionamos todas las propiedades, despues damos clic en getter and setter y seleccionamos todas las propiedades
Como lo hicimos en el post de como llena un JComboBox, tenemos que sobreescribir un metodo llamado toString, para que nos muestre lo que nosotros desiemos al momento de agregar un objeto al JList
La clase quedara de la siguiente manera:
public class Usuario { private String nombre, apellido, direccion, telefono, email; private int id; public Usuario(String nombre, String apellido, String direccion, String telefono, String email) { this.nombre = nombre; this.apellido = apellido; this.direccion = direccion; this.telefono = telefono; this.email = email; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getApellido() { return apellido; } public void setApellido(String apellido) { this.apellido = apellido; } public String getDireccion() { return direccion; } public void setDireccion(String direccion) { this.direccion = direccion; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getNombre() { return nombre; } public void setNombre(String nombre) { this.nombre = nombre; } public String getTelefono() { return telefono; } public void setTelefono(String telefono) { this.telefono = telefono; } @Override public String toString() { return nombre+" "+apellido; } }
Ahora tendremos que crear un modelo para nuestra lista, para eso tenemos uno por default llamado DefaultListModel, declaramos y creamos un objeto de tipo DefaultListModel en la clase de nuestro frame:
/** Creates new form MainWindow */ DefaultListModel modeloLista = new DefaultListModel(); public MainWindow() { initComponents(); jList1.setModel(modeloLista); }
Creamos el modelo y se lo asignamos a nuestra lista. Ahora viene lo mas sencillo del mundo!, en el boton que agregamos en el form damos doble clic y en el evento simplemente agarramos los datos y creamos un objeto de la clase usuario dandole los parametros en el constructor (importante y para buena practica de programacion, no dejemos los nombres por default, a cada textfield le cambiamos el nombre como ud deseen para poder identificarlo, por ejemplo txfNombre,txfApellido,texfDireccion etc), despues de crear nuestro objeto, lo agregamos a nuestra lista:
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: String nombre, apellido, direccion, telefono, email; int id; nombre = txfNom.getText(); apellido = txfApe.getText(); direccion = txfDir.getText(); telefono = txfTel.getText(); email = txfMail.getText(); id = Integer.parseInt(txfId.getText()); Usuario objUsuario = new Usuario(id, nombre, apellido, direccion, telefono, email); modeloLista.addElement(objUsuario); }
Y asi se iran almacenando los objetos usuario a nuestra lista,
Ahora solo falta desplegar la informacion al seleccionar un elemento en la lista, para eso haremos uso del evento del jList llamado valueChanged y escribiremos lo siguiente
private void jList1ValueChanged(javax.swing.event.ListSelectionEvent evt) { // TODO add your handling code here: int index= jList1.getSelectedIndex(); Usuario objUsuario=(Usuario)modeloLista.getElementAt(index); lblId.setText("ID: "+objUsuario.getId()); lblNom.setText("Nombre: "+objUsuario.getNombre()); lblApe.setText("Apellido: "+objUsuario.getApellido()); lblDir.setText("Direccion: "+objUsuario.getDireccion()); lblTel.setText("Telefono: "+objUsuario.getTelefono()); lblMail.setText("Email: "+objUsuario.getEmail()); }
Y al seleccionar cada elemento que este en la lista nos desplegara la informacion en los labels que habiamos agregado
Esto para mi ha sido util al momento de desarrollar diferentes aplicaciones en el tecnologico!, espero les sea de ayuda!
Code4Fun 😀
I wanted to thank you for this great read!! I definitely enjoying every little bit of it I have you bookmarked to check out new stuff you post
I like your writing too.
Thank you.
Chris
Çilingir
Loco la verdad muy bueno, me sirvio para aclarar algunas lagunas que tenia sobre este tema xD (con el valor toString) xq siempre me ponia item@as23 cosas asi, gracias
Hola, buenos días.
Tengo una pregunta de principiante en java – MVC – swing – Jlist.
De esas que no es fácil encontrar en google – y ahora mismo me cuesta un poco entender hasta lo que leo.
¿Es posible implementar un ListModel (public class Loquesea implements ListModel) cuyo «origen de datos» (por llamarlo de alguna manera) sea de tipo map? No tengo problemas si uso un Vector – pero al tratar de usar un Map me dice que no puede implementar el Map.
Este es el esquema de lo que trato de hacer. Que igual es un disparate, igual no.
public class dato_registro
{
…
sus propiedades y sus metodos, por supuesto incluyendo el new
…
}
public class Loquesea implements ListModel {
private Map datadd;
public Model_emailer() {
datadd = new Map();
}
…
codigo que carga de la base de datos los objetos dato_registro y los añade al map
e implementacion de la interfaz ListModel
…
}
Gracias por tu tiempo,
Julieta Martínez
fe de erratas:
donde dice public Model_emailer() {
quiere decir public Loquesea () {
las prisas, que no son buenas.
Gracias de nuevo
Te soy sincero y esto es algo que nunca he hecho! pero crees que exista diferencia si usas hashmap (datadd=new HashMap())?, la verdad no creo por que HashMap implementa Map, pero si no lo has intentado pues habra que probar ya que no tengo alguna otra idea jeje!.
Un saludo
hey gracias ….!
una pregunta a la hora de hacer
int index= jList1.getSelectedIndex();
Alumno alumno = (Alumno)modelList.getElementAt(index);
me sale un error en la segunda linea :
Exception in thread «AWT-EventQueue-0» java.lang.ClassCastException: java.lang.String cannot be cast to funtionallogic.Alumno
at gui.AlumnosGui.jListActionPerformed(AlumnosGui.java:230)
si alguien sabe como solucionar esto… ó quisiera saber si hay otra manera de acceder a una posición del modelList ??
Hola Camilo!
Leyendo la exception veo que el evento que hiciste del JList fue un AcitonPerformed, este funciona al darle clic? o cuando se selecciona un item diferente?, te recomiendo que uses el evento Value Changed. Otra cosa, tu clase se llama Alumno?, que es lo que guardas en los JComboBox, cadenas o objetos tipo Alumno?, la excepcion habla de un String, en ningun momento trabajamos con cadenas, si no con nuestro objeto en tu caso tipo Alumno, si seguiste todo el post?
Saludos!
GRACIAS A SIDO UN GRAN APORTA…ME SIRVIO DE MUCHO
De nada!, que bueno que te ha sido de utilidad!. Saludos!
hola que tal, se podria hacer lo mismo con un jtable? en donde se pueda ver una barra de titulo para ver que es cada columna?
Y el paso posterior a este podria mandar la informacion del jtable a una table de mysql??
Gracias!
te refieres dar de alta un registro escribiendo los datos en un jTable?, nunca lo he hecho pero he de suponer que si se puede!
man tengo problemas para mostrar lo que quiero en el jlist
Podemos empezar especificando errores o que te sale mal, saluduos!.
ArrayIndexOutOfBoundsException sale ese error
Los IDE’s siempre dicen en que linea de codigo esta el error, en el post no manejo arreglos y ese error es de arreglos, estas haciendo algo aparte?
Hola Isaac, maginifica explicación! te cuento a ver si puedes resolverme una duda, estoy haciendo como un formulario en Java, primero he creado una base de datos en Mysql, despues en un jPanel he hecho el formulario y conectado con la base de datos, introduzco los datos y se me guardan en la BD(solo dos campos, ID y Detalles), El problema es que ahora los quiero mostrar en un Jlist por medio de una consulta a la BD. Te escribo el codigo que tengo, no me da errores pero hago algo mal..
Muchas Gracias
lisTag = new JList(modelo);
try {
Class.forName(«com.mysql.jdbc.Driver»);
java.sql.Connection con =DriverManager.getConnection(«jdbc:mysql://localhost:3306/rfidtags», «root», «igvalmol»);
Statement s = (Statement) con.createStatement();
ResultSet rs = s.executeQuery («select * from contenido»);
while(rs.next())
{
modelo.addElement(rs.getInt(2));
}
rs.close();
}
catch (Exception ex) {
JOptionPane.showMessageDialog(rootPane, «Error: » + ex);
}
Dices que tienes 2 campos nomas???? getInt(2) la cuenta empieza desde 0 segun recuerdo, estoy seguro que le puedes proporcionar el nombre del campo como parametro, de ahi en mas no veo nada mal. Saludos
ola me gustaria saber como puedo agregar ina lista a una jlist desde una base de datos…. ya tengo todo diseñado y conectado con la base solo me falta desplegar la informacion en una lista…. porfavor si m pueden ayudar escribir a trabajos.jr@gmail.com saludos gracias.
Hola, desearia una ayuda con un codigo, tengo un jlist en un applet y deseo que los datos sean mostrados en otro applet que tiene otro jlist… cual seria la sentencia? gracias
De 10!
hola
disculpa en que parte del codigo del frame deben de ir los siguientes codigos:
/** Creates new form MainWindow */
DefaultListModel modeloLista = new DefaultListModel();
public MainWindow() {
initComponents();
jList1.setModel(modeloLista);
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
String nombre, apellido, direccion, telefono, email;
int id;
nombre = txfNom.getText();
apellido = txfApe.getText();
direccion = txfDir.getText();
telefono = txfTel.getText();
email = txfMail.getText();
id = Integer.parseInt(txfId.getText());
Usuario objUsuario = new Usuario(id, nombre, apellido, direccion, telefono, email);
modeloLista.addElement(objUsuario);
}
private void jList1ValueChanged(javax.swing.event.ListSelectionEvent evt) {
// TODO add your handling code here:
int index= jList1.getSelectedIndex();
Usuario objUsuario=(Usuario)modeloLista.getElementAt(index);
lblId.setText(«ID: «+objUsuario.getId());
lblNom.setText(«Nombre: «+objUsuario.getNombre());
lblApe.setText(«Apellido: «+objUsuario.getApellido());
lblDir.setText(«Direccion: «+objUsuario.getDireccion());
lblTel.setText(«Telefono: «+objUsuario.getTelefono());
lblMail.setText(«Email: «+objUsuario.getEmail());
}
es que ami me marca errores
en el public MainWindow() {
las variables lblId. etc
y en los txfNom
podrias ayudarme porfavor yo solo llegue hasta la construccion de los Set y Get.
saludos
Para empezar, estas utilizando netbeans??, como creaste la interfaz gráfica ? el tutorial yo pienso que es claro… pero bueno!
Los métodos jButton1ActionPerformed y jList1ValueChanged son eventos que se crean desde el diseñador, creaste los eventos? o copiaste tal cual el código?
En la parte de arriba, debes de agregar un import javax.swing.*; para que puedas hacer uso de DefaultListModel, eso si es error mio puesto que no lo agregué en el tutorial.
Saludos
Tengo errores con esto:
Perros objUsuarios = new Perros(id, nombre, apellido, direccion, telefono, email);
modeloLista.addElement(objUsuarios);
Alguna referencia… urgente!!
Tengo errores con esto:
Perros objUsuarios = new Usuarios(id, nombre, apellido, direccion, telefono, email);
modeloLista.addElement(objUsuarios);
Alguna referencia… urgente!!
Hola Amigo como andas?
Mi nombre es diego y tengo una consulta que hacerte…
tengo que desarrollar un form donde se listen todos los profesionales activos del sistema.
Estoy emepzando con Jigloo, pero no encuentro el componenete adecuado para realizar esto.
Estoy probando con un jTable (no si es correcto el componente!). Lo que tengo que hacer ahora es listar dentro de el todos los profesionales…
Me podrias dar una idea de como hacerlo y si esttoy utiizando el componente adecuado.
Gracias desde ya.
Diego
Que tal Diego,
Tu pregunta es fácil de responder, necesitas mostrar datos con diferentes campos? si es así es perfecto el JTable, si no es el caso podrías utilizar solo un JList o un JComboBox, pero supongo que es el JTable.
Los datos vienen de una base de datos?, dime especificamente tus dudas para ayudarte mejor, el detalle esta en como llenar el JTable?, si es eso puedes utilizar una clase llamada DefaultTableModel y esta contiene metodos para agregar columnas y registros.
Saludos Diego y gracias por pasarte por mi blog!
Hola Isacc. Primero muchas gracias por preocuparte…..
Mira te cuento lo que estoy haciendo….
Estoy desarrollando un sistema para un centro ofatalmologico…
La pregunta del jtable viene por lo siguiente…
Mi idea era listar en un formulario principal, todos los profesionales del sistema.
Y al darle un doble click al registro abrir otro form con los datos del mismo para modificarlos (este ultimo form lo tengo hecho ya).
Nose la verdad si me conviene listar o mostrar como columnas todos los campos de la tabla profesional, ya que son bastantes y nose si se justifica hacerlo…
Ya que estamos te comento tambien una duda en el jTable. Cuando ejecuto el form y le hago doble clikc a uno de los registros por defecto que contiene el mismo, me de la opcion de editar el campo donde le hice click. pero en realidad necesito que no haga eso y me habra en todo caso un form. (Esto es un comentario que te hago solamente de lo que he visto….)
Los datos los tengo guardados en la BD…
Espero tu respuesta…
Que onda Diego,
Mira ahora como lo planteas, si es mejor utilizar un JList porque tal vez solo es necesario mostrar el nombre completo de quien se desea editar y realizando doble clic (o seleccionando uno y luego a algun boton editar) y abrir un nuevo form es mas sencillo y si te recomiendo que lo hagas así.
La verdad ese tipo de eventos en un JTable no se como funcione, creo existe la opción del JTable para que no puedas editar, pero generar un evento con doble clic en un registro no estoy muy seguro. Lo que si puedes hacer es agregar un campo extra al JTable, teóricamente la table recibe objects, o sea cualquier tipo de objeto, entonces tal vez podrías agregar algún botón que al darle clic en el puedas abrir el Form que deseas.
Saludos Diego!, gracias por pasarte por el blog!
Muchisimas graca Isaac. Me sirvio de mucho tus aclaraciones.
Cuando tenga el codigo lo comparte para todos..
Un abrazo grande…
Diego
oye amigo tengo una pregunta ya tengo todo el diseño pero me manda un error en la parte del ususario throw new UnsupportedOperationException(» «) pues me pide poner algo dentro de este que puedo agregar ai pues al ejecutar el codigo no ace lo que se ve en tu tutoriaal nadamas introdusco los datos y ai me quedo ya no ace mas el codigo porfas si me ayudas…
Excelente aporte, me fue de mucha utilidad, mil gracias
Hola Isaac!
He seguido toda la entrada de tu blog y me funciona todo bien salvo una cosa.
Cuando añado el objeto usuario al modelo de la lista, en dicha lista no se me muestra el nombre del usuario, como parece que te pasa a ti por la imagen que has añadido, sino un identificador interno del objeto usuario (algo como «bbdd.Usuario@7538»).
Cómo puedo arreglarlo?
Gracias y un saludo!
Que tal, tal vez omitiste un paso en la declaración de la clase, hay un método que sobrescribimos con @Override y el método es ToString(), revisa a ver si es eso!.
Saludos!
Hola Isaac!, soy diego nuevamente….!
Quiero saber si me puedes hechar una mano con esto…..
Tengo una funcion que me permite cambiar el formato de la fecha que viene desde la base (2012-12-12) a (12-12-2012)…
Eso lo hace, pero el problema es que nose porque le suma un mes mas al que le pongo fijo a la variable que entra por dicho metodo….
te muestro el codigo y lo veras mejor…
————————————————————–
static String id_fecha = «2012-02-10»;
public static String reversefecha(String id_fecha){
String[] array_fechasol = id_fecha.split(«-«);
int day = Integer.parseInt(array_fechasol[2]);
int month = Integer.parseInt(array_fechasol[1]);
int year = Integer.parseInt(array_fechasol[0]);
Calendar cal = Calendar.getInstance();
cal.clear();
cal.set(Calendar.YEAR, year);
cal.set(Calendar.MONTH, month);
cal.set(Calendar.DATE, day);
java.util.Date utilDate = cal.getTime();
SimpleDateFormat sdf= new SimpleDateFormat(«dd/MM/yyyy»);
String horaFormateada = sdf.format(utilDate);
return horaFormateada;
}
——————————————————————
Quiero saber si hay una mejor forma de hacerlo… y la verdad nose cual es le problema que ocaciona dicho comportamiento….
Espero tu ayuda master!
Saludos
Diego
No entendi cuantas classes y donde va en cada una.
Lo estoy tratando de hacer con el 7.2 .
Se me complica en el defaultjlistmodel,me tira error y no se como separas las classes,
es como que esta todo junto.
Esta exelente, yo hace poco que estoy tratando de practicar porque tome un curso de java standar.
Saludos y gracias.
Isaac, tengo una pregunta con respecto al jlist,quiero agregar un boton eliminar en el jlist para dar de baja a un elemento cualquiera de la lista.
No puedo hacerlo porque no se como.Lo unico que puedo hacer es eliminar todos los elementos de la lista.
Te agradezco si puedes ayudarme.
Estoy empezando a entender un poco java ya que hace poco estoy estudiando.
Abrazo y muchas gracias.
que tal muy buena explicacion pero tengo un problemita, que cuando me agrega el objeto al jlist me me lo muestra asi : »Paciente@d5c08f» ,, sé que es algo sencillo pero quisiera saber como hacerle para que solo me muestre el nombre por ejemplo, muchas gracias!
Te falto sobrescribir el método toString en la clase, revisa bien el post es un @Override. Saludos
muchas gracias me fue de gran ayuda
amigo como agrego las columnas y las filas de mi base de datos acces en un JList en java??? te agredeceria mucho por responder
Woah! I’m really digging the template/theme of this website. It’s simple, yet effective.
A lot of times it’s difficult to get that «perfect balance» between user friendliness and appearance. I must say you’ve done a amazing job with this.
In addition, the blog loads extremely quick for me on Opera.
Exceptional Blog!
Can I simply say what a relief to find a person that
actually knows what they are discussing on the net. You
certainly know how to bring a problem to light and make it important.
More people must check this out and understand this side of your story.
It’s surprising you’re not more popular given that you surely
possess the gift.
EXCELENTE MUY BUENO MEN GRACIA PARCERO
hola mira hice casi todo el codigo hasta donde hay que crear el modelo pero lo pongo a correr y no sale nada del formulario ahi si no se ke hacer ¡
Pues se mas específica para poder ayudarte!, Saludos!
hola mira y con jcreator pro cm quedaria la linea de codigo
hola mira y con jcreator pro cm quedaria la linea de codigo te lo agradeceria mucho
Hola Isaac una pregunta si quiero mandar los resultados a otra clase como le harías??? Urge hermano
A que te refieres con enviar los resultados a otra clase? Simplemente ten una instancia de tu otra clase y hazlo como desees, pásalo por parámetro en un constructor, manda a llamar un método con parámetro con el valor que le quieras pasar, solo ten las clases publicas y en el mismo paquete. Será que no entendí la pregunta?
mas o menos te entiendo, pero te voy a explicar lo que estoy haciendo, en un archivo java tengo una consulta donde me muestra todos mis clientes y los mando a una tabla, al momento de darle clic a un cliente quiero que me los mande los datos a unos jtextfield de otro archivo java, sabes como hacerlo o tienes alguna idea???
Coloque unos jtextfield en el mismo archivo donde me muestra mi tabla y al momento de darle clic si me manda los datos a los jtextfield pero quiero que los mande al otro archivo.
Te agradeceria tu ayuda.
Cuando te refieres a otros archivos Java, es correcto, pero manejalo como Clase publica, te digo, si esos archivos (o clases publicas) están en el mismo paquete (o podrían estar en diferente paquete), lo que puedes hacer es que en la clase donde haces la consulta, es crear una instancia de la 2da clase donde están los txtFields y pasarlo por su constructor, ya en la 2da clase manejas el constructor como desees
A ok, mas o menos te entiendo, deja lo intento a ver que pasa, muchas gracias Isaac se te agradece mucho.
De nada :), saludos!
hey chamo como quedaria la linea de codigo con jcreator pro
It is hard to dispute the fact that car shopping is a stressful, anxiety-ridden task for many individuals.
The sheer size of the expenditure involved and the
myriad of choices on the market make the need for education and information
quite critical. Fortunately, the tips below can make
the process far simpler than you may have believed.
You could definitely see your enthusiasm within the
work you write. The arena hopes for even more
passionate writers like you who aren’t afraid to mention how they believe. At all times follow your heart.
Hola Issac me parece bien tu explicacion, pero cuanto lo inserto no me inserta el dato correcto sino que pone AnadirDatos@12f55t el nombre de la clase mas numero como resuelvo esto
Tienes que escribir un método llamado toString, fijate en el código, debe de existir un @Override.
Saludos
Muchisimas gracias por el ejemplo,me a ayudado a terminar el ejercicio que tenia entre manos.
Que bueno que te ha servido Manuel.
Saludos!
Hola amigo excelente la explicación estoy haciendo algo similiar, pero entonces si necesito buscar una palabra en el jlist? me tengo que ver obligado a usar un vector que recorra en busca de la palabra que decidí buscar, ya que lo que quiero es tener un botón de buscar y que al escribir una palabra me muestre las coincidencias en la lista con esa palabra, ¿Que debo hacer entonces?,
y amigo cuando puedas nos explicas como hacer lo mismo pero por medio de un vector… Gracias…
Tengo una duda el programa lo pude hacer pero esta parte no me sale
private void jList1ValueChanged(javax.swing.event.ListSelectionEvent evt) {
// TODO add your handling code here:
int index= jList1.getSelectedIndex();
Usuario objUsuario=(Usuario)modeloLista.getElementAt(index);
labelnom.setText(«Cliente: «+objUsuario.getNombre());
labelcorr.setText(«Correlativo: «+objUsuario.getCorrelativo());
labeldes.setText(«Destino: «+objUsuario.getDestino());
labelurg.setText(«Urgencia: «+objUsuario.getUrgencia());
}
no logro hacer pata que se muestre la informacion en las label
consulta estoy haciendo un formulario Jflame de dos jList en la primera lista debo ingresar palabras que comienzan con vocal en segunda consonantes cual seria el codigo para que funciones?
tal vez algo basico pero necito cargar en una jlist grana cantidad de datos y separalo con espacios no lo he podido conseguir escrito por ejemplo String cadena=»HOLA JEQUE» +»\n»+»TU GLORIA MI GLORIA «+»\n»+»—————————————–«+»\n»;
modelo.addElement(cadena); claro antes de haber definido mi DefaultListmodelo y adicionar luego a mi jlist ese modelo creado lo que no consigo es separar con el caracter sato de linea
lo que necesito en la jlist es una salida como esta HOLA JEQUE
TU GLORIA MI GLORIA
—————————————-
ESTO EN UN ELEMENTO DE LA LISTA Y ASI SUCESIVAMENTE
LES AGRADECEERIA SI ALGUIEN ME AYUDASE
—
Si quisiera aplicar esa misma interface a estas 2 clases como podria hacerlo sin usar netbean y con Jcreator o BlueJ, de ante mano muchas gracias…
public class Cliente
{
//atributos de la clase
private String nombre;
private String rut;
private String fechaNacimiento;
private int ingreso;
private int edad;
private char sexo;//M masculino F femenino
private int telefono;
private String direccion;
private String contrato;//part-time o full-Time
//metodo constructor sin parametros
public Cliente(){
nombre=»Alister muños rodrigres»;
rut=»000000-0″;
fechaNacimiento=»07/08/1989″;
ingreso=100000;
edad=20;
sexo=’M’;
telefono=00000000;
direccion= «Siempre viva 123″;
contrato=»Part-time»;
}
//metodo constructor con parametros
public Cliente(String nombre, String rut, String fechaNacimiento, int ingreso,int edad, char sexo,int telefono,String direccion,String contrato){
setNombre(nombre);
setRut(rut);
setFechaNacimiento(fechaNacimiento);
setIngreso(ingreso);
setEdad(edad);
setSexo(sexo);
setTelefono(telefono);
setDireccion(direccion);
setContrato(contrato);
}
//accesadores
public String getNombre(){
return nombre;
}
public String getRut(){
return rut;
}
public String getFechaNacimiento(){
return fechaNacimiento;
}
public int getIngreso(){
return ingreso;
}
public int getEdad(){
return edad;
}
public char getSexo(){
return sexo;
}
public int getTelefono(){
return telefono;
}
public String getDireccion(){
return direccion;
}
public String getContrato(){
return contrato;
}
//mutadores
public void setNombre(String nombre){
nombre=nombre.trim();
if(nombre.length()=120000){
this.ingreso=ingreso;
}else{
System.out.println(«El ingreso no debe ser menor a 120.000 para postular a la tarjeta»);
}
}
public void setEdad(int edad){
if(edad>=18 && edad5){
this.direccion=direccion;
}else{
System.out.println(«La direccion debe tener mas caracteres»);
}
}
public void setContrato(String contrato){
if(contrato==»Part-time»||contrato==»Full-time»){
this.contrato=contrato;
}else{
System.out.println(«EL contrato debe ser Full-time o Part-time solamente»);
}
}
//customer
public void printDatos(){
String dato;
if(getSexo()==’F’){
dato=»Femenino»;
}else{
dato=»Masculino»;
}
System.out.println(«Nombre completo:»+nombre);
System.out.println(«Rut: «+rut);
System.out.println(«Fecha de nacimiento:»+fechaNacimiento);
System.out.println(«Ingreso: «+ingreso);
System.out.println(«Edad: «+edad);
System.out.println(«Sexo: «+dato);
System.out.println(» Nº Telefono:»+telefono);
System.out.println(«Direccion: «+ direccion);
System.out.println(«Contrato: «);
System.out.println(«Direccion: «+direccion);
System.out.println(«Contrato: «+contrato);
}
}
y esta clase llamada tarjeta «Esto es para un trabajo de universidad»
public class Tarjeta
{
//Atributos
private Cliente clientex;
private int codigo;
private int password;
private int cupo;
private int cuota;
private int deuda;
private boolean habilitada;
//Metodo Contructor sin parametros
public Tarjeta(){
clientex=new Cliente();
codigo=00000000;
password=0000;
cupo=60000;
cuota=0;
deuda=0;
habilitada=false;
}
//Metodo Contructor con parametros
public Tarjeta(Cliente clientex,int codigo,int password, int cupo,int cuota,int deuda, boolean habilitada){
this.clientex=clientex;
setCodigo(codigo);
setPassword(password);
setCupo(cupo);
setCuota(cuota);
setDeuda(deuda);
this.habilitada=habilitada;
}
//Accesadores
public Cliente getCliente(){
return clientex;
}
public int getCodigo(){
return codigo;
}
public int getPassword(){
return password;
}
public int getCupo(){
return cupo;
}
public int getCuota(){
return cuota;
}
public int getDeuda(){
return deuda;
}
public boolean getHabilitada(){
return habilitada;
}
//mutadores
public void setCliente(Cliente clientex){
this.clientex=clientex;
}
public void setCodigo(int codigo){
if(codigo>=10000000 && codigo=1000 || codigo=60000){
this.cupo=cupo;
}else{
System.out.println(«El cupo inicial debe ser 60.000 pesos»);
}
}
public void setCuota(int cuota){
if(cuota>=0 ||cuota=0 && deuda<=getCupo()){
this.cupo=cupo;
}else{
System.out.println("El la deuda no debe superar al cupo y no debe ser menor a 0");
}
}
public void setHabilitada(boolean habilitada){
this.habilitada=habilitada;
}
//Customer
public void printTarjeta(){
clientex.printDatos();
System.out.println("Codigo: "+codigo);
System.out.println("Clave: "+password);
System.out.println("Cupo: "+cupo+" Pesos");
System.out.println("Habilitada"+ habilitada);
}
public void fichaTienda(){
System.out.println(" Tienda Paradise ");
System.out.println("");
System.out.println("______________________________________");
System.out.println("");
System.out.println("Nombre Completo :"+clientex.getNombre());
System.out.println("_______________________________________");
System.out.println("Cupo:"+cupo+" $ | Codigo: "+codigo+" | Deuda: "+ deuda+" | cuotas: "+cuota);
}
//validar usuario
public boolean validarUsuario(String nombre, int password){
if(clientex.getNombre()==nombre && getPassword()==password){
return true;
}else{
return false;
}
}
//valor de las cuotas
public void ValorCuotas(double interes){
int total;
total=(int)((deuda/cuota) + interes);
System.out.println( total);
}
//Habilitar tarjeta
public void habilitarTarjeta(){
this.habilitada=true;
this.cupo=60000;
this.deuda=0;
}
//Saldo disponible
public int disponible(){
int total;
total=cupo-deuda;
return total;
}
}
muy bien explicado gracias
Hola… esta genial el tutorial, pero podrían hacer exactamente lo mismo con una base de datos por favor… lo necesito, he buscado por todas partes y no encuentro nada que me sirva, su tutorial esta muy bien explicado y se acerca muchísimo a lo que quiero pero me sigue dando problemas la base de datos… si lo pudieran hacer se los agradecería infinitamente
eyyy. me puede pasar el codigo a mi correo richardsiles1@gmail.com
hola porfavor necesito que me ayuden tengo 2 jlist uno yeno con cursos de un estudiante y el otro esta vacio y tengo un boton agregar con el cual me permite agregar el curso seleccionado al otro jlist pero el problema esta en que no se debe aceptar que se agrege de nuevo un curso qe ya aya sido agregado al alumno .. gracias de antemano
Hola , tengo una prueba cuando escribo los datos y le doy al botón de guardar , me aparece el nombre y el apellido en el la lista pero cuando pincho sobre esos datos se me escriben otra vez en la parte arriba en vez de en la parte de abajo de información
Genial, fue de mucha ayuda
envia el archivo de COMO AGREGAR DATOS Y MOSTRARLOS EN UN JLIST [JAVA]
puedes apoyarme con todo esto ya echo para hacer comparaciones de código
pregunta como se hace el recuadro altas, información y lista?
Hola, he visto una oferta de una diana de dardos en esta web, alguien que haya comprado en ese lugar puede decirme si es fiable?
Buenos dias, estoy buscando una hamaca para bebe para regalarsela a mi sobrino cuando nazca pero ando un poco pelao jejeje, he estado mirando bastante y lo mas economico que he visto ha sido esta pagina. Me preguntaba si alguien conoce alguna aun pero economica y no le importaria compartirla conmigo…gracias!
Hola buenas tardes! Me gustaria saber como puedo agregar al codigo un boton de eliminar. y otro de eliminar todo que borre cada cosa que agregue Al escoger el boton.
Llevo tiempo en busca de una hidrolimpiadora de alto rendimiento y a un optimo importe, me he cruzado con esta pagina experta en hidrolimpiadoras esta, que os da la sensacion?
Estoy buscando una camara para mi coche y no se mucho del tema. Saben si las opciones que se venden en este sitio son opciones buenas?
Señor, placer leer este codigo que me saco de una duda con un jList
Gracias por el codigo tan bien explicado, espero estes bien y sigas dando consejos acerca de Java Swing….
Respecto un comentario que vi, que dices que se te olvido importar el Swing, netbeans te advierte apenas copias y pegas texto….
Hola buenas noche tengo una consulta el código si me funciona al Ejecutarlo pero al momento de presionar el Jlist ,en el segundo panel aparecen todos los datos agregados menos el ID , siempre sale en 0 , a qué se debería ?
Agradecería mucho su Repuesta