Ver Mensaje Individual
  #3 (permalink)  
Antiguo 17/01/2012, 22:11
Avatar de zero0097
zero0097
 
Fecha de Ingreso: abril-2010
Ubicación: México
Mensajes: 481
Antigüedad: 16 años, 6 meses
Puntos: 69
Respuesta: Capturar escritorio java

Código PHP:
private void BotonCapturarMouseClicked(java.awt.event.MouseEven t evt) {
    
//Declaramos una cadena que sera el nombre del archivo
    
String captura01 = null;

    
//Utilizamos un try-catch por si nos da algun error poder retenerlo
    
try {
        
//Esta variable ya declarada nos permitira coger el tamaño por pixeles de la pantalla
        
Dimension tamañopant = java.awt.Toolkit.getDefaultToolkit().getScreenSize ();
        
Rectangle pantallarect = new Rectangle (tamañopant);
        
Robot robot = new Robot();
        
//Aqui crearemos la captura en si misma
        
BufferedImage imagen = robot.createScreenCapture(pantallarect);

        
ImageIO.write(imagen, "png", new File(captura01));
        
System.out.println("[Captura iniciada]");

        
//Haremos un sleep de 5 segundos
        
Thread.sleep(5*1000);
        
String NombreFichero = "c:\\captura01.png";

        
//En esta parte me falta colocar el ultimo catch con la excepcion y llamar a la public class CapturaPantalla para hace un capturescreen,pero no me deja, supongo que porque lo estoy haciendo desde un boton private void 

    
} catch (InterruptedException ex) {
        
Logger.getLogger(CapturaPantalla.class.getName()). log(Level.SEVERE, null, ex);
    } catch (
IOException ex) {
        
Logger.getLogger(CapturaPantalla.class.getName()). log(Level.SEVERE, null, ex);
    } catch (
AWTException ex) {
        
Logger.getLogger(CapturaPantalla.class.getName()). log(Level.SEVERE, null, ex);
    }
} 
Solo te puedo decir que no es necesario anidar los try y los catch, con un solo try puedes tener varios catch.....y si no quieres tener varias excepciones pues capturala de una sola
Código PHP:
catch(Exception e) {
// estas tratando a todas las excepciones igual, tal vez de convenga esto
} 

No se si se solucione tu problema pues no me queda bien cual es el error que te da....puedes ponerlo para saber que es