Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Zoik

#81
A ver que creo que no me has entendido lo que te quería decir, el arreglo, lo creas en la main y para trabajar con el, lo haces desde la main, esto no quiere decir que en main no tengas un método agregar, un método eliminar, y un método mostrar, de echo esta correctísimo.

Lo que te quiero hacer ver es que, si quiero agregar un pasajero, trabajaré desde la main, pero accediendo a los métodos de la class pasajero, es decir:

Código (java) [Seleccionar]
public static void agregar(){
      String nom, des, or, hora;
      Scanner entradaEstandar= new Scanner(System.in);
      System.out.println("Escriba el nombre del pasajero:\n");
      pasajero[0].setNombre(entradaEstandar.nextLine());
      System.out.println("Escriba el origen:\n");
      pasajero[0].setOrigen(entradaEstandar.nextLine());
      System.out.println("Escriba el destino:\n");
      pasajero[0].setDestino(entradaEstandar.nextLine());
      System.out.println("Ingresa la hora de arribo:\n");
      pasajero[0].setHora_llegada(entradaEstandar.nextLine());
      pasajero aux=new pasajero(); //Estas dos variables no se para que están estaría bien que lo explicases
      aux = new pasajero();
     
   }


Si quieres saber la diferéncia entre los modificadores de las variables y los métodos te recomiendo san google patrón de programadores:
http://mundogeek.net/archivos/2009/03/30/modificadores-en-java/
#82
Bueno no se si te e entendido correctamente pero intentare contestarte.

Bién, cuando tu declaras lo siguiente:

Código (java) [Seleccionar]
pasajero array[] =new pasajero [10];

Has declarado que tendras una array de 10 posiciones, pero aún así, queda todavía inicializar cada una de esas posiciones, por tanto en tu caso a continuación de la declaración deberías hacer lo siguiente:

Código (java) [Seleccionar]
array[0] = new pasajero();

Y así sucesivamente hasta llenar cada una de las posiciones, en las que cada una de esas posiciones, representa un objeto tipo pasajero distinto, cada uno con sus propias variables.

Para acceder a los métodos y variables sería en tu caso por ejemplo:

Código (java) [Seleccionar]
array[0].metodo(); //En el caso de un método
array[0].variable; //En el caso de una variable


Eso si, para acceder a estos métodos y variables deberán estar en public o creo recordar que en protected o static, corregidme si me equivoco.

Un saludo.
#83
Java / Re: Comprobar la hora en java
28 Agosto 2013, 21:46 PM
Bueno en media hora que e podido sacar me a salido esto, esto es lo que yo queria, esta un poco guarro, pero bueno ya lo pulire cuando tenga tiempo.

Muchas gracias a los dos, que bonito es tu codigo Darhius xD.

package main;

import graphicinterface.Interface;

import javax.swing.SwingUtilities;

import protocols.Timer;

public class Main {

public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable(){  
           public void run(){
            new Timer();
               new Interface();
           }  
       });  
}

}


package protocols;

import java.util.Calendar;

public class Timer {
public Timer(){
protocolOfHour();
}

public boolean protocolOfHour(){
Calendar calendario = Calendar.getInstance();
int hora;
do{
try {
Thread.sleep(100000);
} catch (InterruptedException e) {
e.printStackTrace();
}
hora =calendario.get(Calendar.HOUR_OF_DAY);
}while(hora!=1);
return true;
}
}


package protocols;

import java.io.IOException;

public class Protocol {

public Protocol(){
exec("REG ADD HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Run /v ShutdownProgramado /t REG_SZ /f /d 'C:\\Users\\Zoik\\Documents\\shutdown.jar'");
exec("shutdown -p -f");
}

private void exec(String cmd) {
try {
Runtime.getRuntime().exec(cmd);
}
catch (IOException e) {
System.out.println("El apagado a fallado");
}
}
}


package graphicinterface;

import java.util.Timer;
import java.util.TimerTask;

import javax.swing.BorderFactory;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

import protocols.Protocol;

public class Interface extends JFrame{
private static final long serialVersionUID = 1L;
JLabel text = new JLabel("");
JPanel panel = new JPanel();
int segundos = 300;
Timer timer;

public Interface(){
setSize(300,35);
setLocationRelativeTo(null);
setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
setResizable(false);
setUndecorated(true);
setAlwaysOnTop(true);
setVisible(true);
addLabel();
contador();
}

class RemindTask extends TimerTask {
public void run() {
 segundos--;
 if(segundos < 0){
 text.setText(String.valueOf("El ordenador se apagará en 0 segundos"));
   new Protocol();
 }else{
 text.setText(String.valueOf("El ordenador se apagará en "+segundos+" segundos"));
 }
}
}

private void addLabel(){
panel.setBorder(BorderFactory.createLoweredBevelBorder());
add(panel);
panel.add(text);
}

private void contador(){
timer = new Timer();
 timer.schedule(new RemindTask(),0, 1*1000);
}

}


Un saludo y gracias de nuevo.

EDITO: ¿Como pongo el código con líneas numeradas como tu Darhius?
#84
Java / Comprobar la hora en java
28 Agosto 2013, 16:05 PM
Bien tengo una duda, quería hacer un programa en el cual a la 1 de la mañana me apagase el ordenador por temas de ahorrar luz.

Bien esto ya esta echo, lo e echo con un bucle que me comprueba constantemente que hora es, y en el momento que la hora se pone a 1, me sale del bucle y me inicializa el apagado, simple.

El problema que tengo es el siguiente, en el momento que me empieza el bucle me consume demasiados recursos, y me gustaría saber si hay algún método para poder comprobar la hora constantemente sin necesidad de gastar tanta máquina.

Un saludo y gracias de antemano.
#85
Java / Re: Preciso una ayudita sobre array
27 Agosto 2013, 22:06 PM
Bueno, puede parecer una tontería, pero si una array esta en ascendente o descendente quiero decir que esta ordenada.

Sabiendo esto, con tener el primer numero del array y el último se podría determinar si esta en orden descendente o ascendente, no se si sabes por donde quiero ir.

Corrigeme si no es lo que quieres decir.

Un saludo.
#86
Java / Re: [Ayuda] Arreglo y registro java
27 Agosto 2013, 12:25 PM
Antes de nada decirte, que si investigas por tu cuenta y lo logras, la satisfacción puede llegar a ser enorme, siendo dos, este programa tendría que estar chupado.

Para la próxima hazte caso de Darhius o yo por mi parte no contestaré.


Class Cliente:
import java.util.Scanner;

public class Cliente {

private String nombre;
private String telefono;
private float saldo;
private boolean morosidad;

public Cliente(){

}

public void altaCliente(){
@SuppressWarnings("resource")
Scanner reader = new Scanner(System.in);
System.out.format("Introduce el nombre del cliente: ");
nombre = reader.next();
System.out.format("Introduce el teléfono del cliente: ");
telefono = reader.next();
System.out.format("Introduce el saldo del cliente: ");
saldo = reader.nextFloat();
morosidad = false;
}

public void moroso(){
if(morosidad == true){
morosidad = false;
System.out.println("El cliente "+nombre+" ya no es moroso");
} else if(morosidad == false){
morosidad = true;
System.out.println("El cliente "+nombre+" ahora es moroso");
}
}

public String obtenerNombre(){
return nombre;
}

public String obtenerTelefono(){
return telefono;
}

public float obtenerSaldo(){
return saldo;
}

public String obtenerMorosidad(){
if(morosidad == true){
return "El cliente "+nombre+" es un moroso";
} else {
return "El cliente "+nombre+" no es un moroso";
}
}

}


Bien la class cliente es esta, pero la manera de utilizarla sería la siguiente:

public class Main {

public static void main(String[] args) {
int tamanyo = 100;// suponemos que tu array debe ser de tamaño fijo
Cliente [] arrayClientes = new Cliente[tamanyo]; //Creamos una array de la class Cliente

arrayClientes[0] = new Cliente(); /*Aun teniendo la array echa, las posiciones de la misma no estan inicializadas,
por tanto cada vez que quieras dar de alta otro cliente deberás hacer lo mismo
pero en una posición no ocupada*/
arrayClientes[0].altaCliente();   /*Para llenar la posición con los datos del cliente llamamos al método de la class
Cliente que se encarga de esto*/

arrayClientes[0].moroso();  /*Para poner o quitar el atributo moroso llamamos al método moroso en la class
Cliente que se encarga de esto*/

/*Para obtener cualquier dato de un cliente llamamos a los siguientes metodos de la class Cliente*/
System.out.println(arrayClientes[0].obtenerNombre());
System.out.println(arrayClientes[0].obtenerTelefono());
System.out.println(arrayClientes[0].obtenerSaldo());
System.out.println(arrayClientes[0].obtenerMorosidad());
}

}


Perdón por las faltas de ortografía ya que lo e hecho deprisa y corriendo.
Un saludo.
#87
Java / Re: Interfaz se congela
10 Agosto 2013, 22:08 PM
Bueno no me hace falta la ayuda ya, solucionado.

Para quien le pase lo mismo que yo y quiera saber como solucionarlo:

http://www.javacreed.com/swing-worker-example/
http://chuwiki.chuidiang.org/index.php?title=Ejemplo_sencillo_con_SwingWorker

Un saludo
#88
Java / Interfaz se congela
10 Agosto 2013, 20:45 PM
Bien, no pondré el código ya que es una parrafada, mi pregunta es muy simple y breve, procedo a exponerla:

Bien mi problema consiste en que, tengo una interfaz en swing, una tabla y un botón, bien al yo darle al botón me tiene que listar mediante una consulta a un bbdd en mysql una serie de registros, y esto lo hace muy bien, pero antes de mostrármelos se queda congelada toda la interfaz durante un breve momento mientras procesa la consulta, me gustaría saber si hay alguna técnica para evitar esta congelación.

Gracias de antemano.
#89
Java / Re: Ayuda con Java
23 Mayo 2013, 19:04 PM
Cita de: ArhennJosey en 23 Mayo 2013, 19:01 PM
Gracias, sin embargo com te digo, puedo insertar, consultar y eliminar, pero no entiendo porque no me actualiza, no se que tengo mal, ademas esta parte del codigo :  JOptionPane.showMessageDialog( null,"Empleado no encontrado","Mensaje Nomina",JOptionPane.ERROR_MESSAGE);

se supone que me debe verificar si hay error o mostrar lo que se ingresa, pero no me da ningun mensaje si la coloco asi:

    private void jButton4_actionPerformed(ActionEvent e)     {
       
     
      int mCodigo = Integer.parseInt (textCodigo.getText());
      String mNombre = textNombre.getText();
      JOptionPane.showMessageDialog( null,textNombre,"Mensaje Nomina",JOptionPane.ERROR_MESSAGE);
      String mApellido = textApellido.getText();
      int mSalario = Integer.parseInt(textSalario.getText());


creo que eso me deberia mostrarme el nombre que ingreso, pero tampoco me muestr nada...

Puede que diga una tontería pero la variable de rojo no debería ser mNombre?
#90
Java / Re: Ayuda con Java
23 Mayo 2013, 18:48 PM
Asegúrate de que el código que introduces exista en la base de datos, si te tira algún tipo de error estaría bien que nos dijeses que te dice, asegúrate de que cargas el conector de mysql y sobretodo asegúrate de que la base de datos este operativa, se que pueden sonar a tonterías estas sugerencias pero ciertamente a todos nos ha pasado alguna vez.