salida de frame en java

Imagen de ghost
0 puntos

bueno mi problema que estoy haciendo una aplicacion en frame de java pero al momento de darle salir en la parte superior izquierda de mi frame no me sale tengo que matar mi proceso y no quiero eso estoy usando esta parte de codigo que se supone que me tiene que sacar:

public boolean handleEvent(Event e)
{
if (e.id==Event.WINDOW_DESTROY)
{
hide();
dispose();
System.exit(0);
}
return super.handleEvent(e);
}

pero no lo hace, bueno de antemano muchas gracias y espero y puedan ayudarme

atte. spider

Imagen de keygen
+1
0
-1

puedes utilizar cualquiera de los siguientes metodos:

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

o bien agregar un metodo escuchador con una clase interna

addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent evt){
System.exit(0);
}
});

--
[vivie siempre libre]

+1
0
-1

--
[vivie siempre libre]

Imagen de ghost
+1
0
-1

bueno camarada primero que todo muchas gracias por tu interes de ayudarme y bueno lo que pasa que coloque el metodo setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); y me marca este error...

init:
deps-jar:
Compiling 1 source file to /home/ceci/prueba/build/classes
/home/ceci/prueba/src/prueba/server1.java:87: cannot find symbol
symbol : variable JFrame
location: class prueba.server1
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Note: /home/ceci/prueba/src/prueba/server1.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
1 error
BUILD FAILED (total time: 1 second)

si me puede orientar para saber que error es te lo agradeceria mucho

atte. spider

+1
0
-1
Imagen de Sormes
+1
0
-1

No encuentra JFrame...has incluido la libreria de clases?(Si no recuerdo mal es la swing).
te esta avisando de que usas un método desautorizado (pueda ser setDefaultCloseOperation por lo que leo en el mensaje de tu error pero lo compruebas, tienes una maravillosa documentación de la API en http://java.sun.com/j2se/1.5.0/docs/api/).Cuenta si sigues con el problema, pero mirate un poquito el funcionamiento básico de java (te ayudará a ver tus propios errores), aunque sea más divertido ver compilar tu programa ;).Saludos

+1
0
-1
Imagen de akdmia
+1
0
-1

te falta el import..
seria conveniente que uses algun IDE, que te facilitara el trabajo, en este caso te subrayaria JFrame diciendo que falta el import..
de mi parte te recomiendo eclipse..

+1
0
-1
Imagen de ghost
+1
0
-1

bueno camarada e estado checando la pagina que me diste o pasaste pero no logro componer mi error que me marca de las librerias que tengo son estas no se si esten bien o haga falta alguna:

import java.awt.*;
import java.net.*;
import java.io.*;
import java.lang.*;

y perdón akmia a mi no me gustaria cambiar a eclipse creo que lo que es el netbeans es muy bueno para mi gracias de todos modos por la sugerencía...

P.D agradesco mucho su ayuda y espero que se pueda resolver este problema ya que para mi es de vital importancía muchas gracias...

atte. spider

+1
0
-1
Imagen de Sormes
+1
0
-1

Si leyeses un poquito de documentacion sabrías que JFrame es una clase de las librerias swing, si leyeses los errores que te muestra al compilar te enterarias que te falta la clase JFrame y entonces la buscarías en la documentación o la pondrías en el google y te daría que librería la lleva, y si no leyeses documentación o no buscases en google(cosa obvia en tu caso) te quedaría la opción de leer los post que nos molestamos algunos en escribir para dejar de vez en cuando cosas en bandeja(acto poco recomendable para el aprendizaje).Pero acabas de demostrar que ni te documentas ni buscas y lo peor de todo: no lees las respuestas.Una vez más me indigno ante tanta poca voluntad.

http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/JFrame.html

+1
0
-1
Imagen de ghost
+1
0
-1

bueno creo que por una aparte tienes razon pero bueno tal vez el echo es que tu seas mas inteligente que yo si lei sobre lo que me diste pero bueno creo que no di con la respuesta a mi problema pero bueno creo que el echo de que haga o no haga las cosas no te deberia de importar por que cada quien es como es y ahi que respetar y si no te agrada pues tan simple como no me ayudes y ya creo que te respeto y lo que me has ayudao te lo e gradecido asi es ni modo de todos modos gracias y espero llegar a ser como tu por que la neta con lo que me dices como que me das a entender que me falta mucho de todos modos lo repito muchas gracias por la ayuda y de en verdad que si cheque lo que me diste y me pase un buen rato trandolo de leer ya que el ingles no se me da mucho pero aun asi hice el esfuerzo cuidate mucho

atte. spider

+1
0
-1
Imagen de eivar
+1
0
-1

Java tienes dos librerias que te permiten crear aplicaciones graficas
AWT (a la cual pertenece Frame) y Swing, ahora para que al hacer le click en el boton de cerrar de la ventana salga de la aplicación tienes que agregar en el constructor de tu clase (espero que entiendas de que te hablo) lo siguiente:

this.addWindowListener(new java.awt.event.WindowAdapter(){
   public void windowClosing(java.awt.event.WindowEvent evt){
      System.exit(0);
   }
});

lo del «java.awt.event.» es para que no te de ningun problema con las librerias y no tengas que poner un import al inicio de la clase.

Ahora el error
«symbol : variable JFrame
location: class prueba.server1
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Note: /home/ceci/prueba/src/prueba/server1.java uses or overrides a deprecated API.»

te está diciendo que estas usando algo que se recomienda que no uses porque en proximas versiones ya no estará disponible (eso es lo que quiere decir «deprecated API») pero con lo que te recomiendo arriba esto no es necesario que lo uses y ademas JFrame es de Swing y no de AWT.

Para desarrollar en java te recomiendo NetBeans o si lo prefieres Eclipse.

si tienes más preguntas acerca de java no dudes en enviarme un correo a e.mont01@gmail.com y con gusto te ayudaré en lo que pueda.

te adjunto el codigo de una clase que usa «Frame» para que lo tomes de ejemplo.

import java.awt.*;
import java.awt.event.*;

public class Ventana extends Frame {
  private int altoVentana=600,anchoVentana=800;

  public Ventana(){
//manejo de la ventana
   this.setTitle( "Una Ventana" );
   this.setSize(anchoVentana,altoVentana);
//manejo del eveto de ventana para salir.
   this.addWindowListener(new java.awt.event.WindowAdapter(){
    public void windowClosing(java.awt.event.WindowEvent evt){
      System.exit(0);
    }
  });

//hacer visible la ventana
  this.setVisible(true);

  }

}

¡El mundo es mejor cuando eres LIBRE de elegir!
Eivar A. M. M. MI BITACORA
guia de Ubuntu Dapper Drake

+1
0
-1
Imagen de ghost
+1
0
-1

ya me salió camarada te agradesco mucho tu ayuda y creo que tomaré tu palabra de mandarte por correo algunas dudas que tengo, ta gradesco la molestia que te tomaste para ayudarme es bueno saber que uno cuenta con gente como tu, con eso dan mas ganas de trabajar y echarle muchas ganas mi correo es duende1602@gmail.com espero y sigamos en contacto. MUCHAS GRACIAS!!!!

atte. spider :-D

+1
0
-1
Imagen de Sormes
+1
0
-1

Aquí nadie está exigiendo nada, y el que cada uno tiene un nivel está claro. Algunos pretender programar poniendose directamente con una sintaxis, un IDE(luego no sabemos linkar librerias desde consola) y cogiendo algún snippet de aquí o allí y luego preguntamos cosas tan básicas cómo "¿porque dice que no encuentra esto...o aquello?".Hay que ir despacio, y no querer construir la casa por el tejado (a no ser que lo único que hagamos sea compilar codigo de ejemplo de otros el resto de nuestras vidas).Es cómo si te compras un coche, te subes y preguntas ¿donde esta el acelerador?,pisas a fondo sin preguntarte si existen más cosas y luego te extrañas de pegartela en la primera curva.De todas formas tienes razón que cada uno hace lo que quiere, y así es como se está conviertiendo este foro
(como muchos otros) en una "asistencia tecnica"(haga click aqui , aqui y aqui y ya tiene lo que pidio).¿que haces usando librerias para red si ni siquiera sabes identificar un error tan básico como que te diga que una clase no la reconoce?,si tienes problemas con el inglés tendrás que aprender algo porque si no lo levas chungo si quieres dedicarte a esto.Para finalizar no busco flamear a diestro y siniestro, intento hacer parar a las personas a pensar un "poquito"(mi forma de contestar a las preguntas no es personal es general, ya que van a leerlo otras personas y lo interesante es que saquen algo de provecho, no una solucion de "cortar y pegar").No creo que exista nada peor para el autoestima personal que programar algo sin saber cómo se usa o para que vale algo.Saludos

+1
0
-1
Imagen de ghost
+1
0
-1

lo unico que te digo es que gracias por la ayuda señor y ni modo jajajajajajaja esto asi es lo bueno que otra persona me ayudo de todos modos le deseo lo mejor mi estimado sormes y si ve un post mio por favor ni lo pele se lo agradeceria bastante :-D...

atte. spider

+1
0
-1
Imagen de Sormes
+1
0
-1

En que no "pelaré" una pregunta formulada de esa manera está claro (asi que por lo menos hemos llegado a un punto en común).Por otro lado me queda la esperanza de que las personas que lean todo el hilo se den cuenta de cómo es el funcionamiento correcto de un foro (sino lo sabian ya), y es tanto mi empeño de que este sistema de comunicación como es un foro sea de utilidad para toda la comunidad, que hasta me dignaré a contestarte tus futuras preguntas si estas fluyen de la forma correcta.Un saludo.

+1
0
-1
Imagen de ghost
+1
0
-1

como quieras camarada, con tu gran sabiduria a ver si te dignas a contestarme jajajajaja...
:-P, y que se den cuenta tambien de la clase de personas que hay en este foro!!!
atte. spider

+1
0
-1
Imagen de Sormes
+1
0
-1

Don't feed the troll

+1
0
-1
Imagen de ghost
+1
0
-1

pero date cuenta de lo que me escribiste la verdad...

"En la terminología de Internet, un troll (a veces trol) es una persona que escribe mensajes groseros u ofensivos en Internet, por ejemplo en foros, para interrumpir la discusión o enfadar a sus participantes"

atte. spider

+1
0
-1
Imagen de Anónimo
+1
0
-1

PARA CERRAR TU FRAME TODO STA BIEN LO UNICO ES QUE TENES QUE CAMBIAR EL System.exit(0);
por el System.exit(1); y listo

+1
0
-1