Mostrar procesos con Java

Si alguien esta buscando un código que muestre los procesos que se están ejecutando en el PC, con código Java, el código es el siguiente:

import java.io.BufferedReader;
import java.io.InputStreamReader;

public class MiClasesita {

    public static void main(String[] args) {

	try{

	    String str_proceso = null;
	    String admin =
		System.getenv("windir") + "\\system32\\"
               + "tasklist.exe";
	    Process proceso =
               Runtime.getRuntime().exec(admin);
	    BufferedReader input = new BufferedReader(
		    new InputStreamReader
                       (proceso.getInputStream()));
	    while((str_proceso = input.readLine()) != null){
		System.out.println(str_proceso);
	    }
	    input.close();

	}catch(Exception e){
	    e.printStackTrace();
	}
    }
}

Probado en Windows Vista y funciona perfectamente, los procesos te los muestra en consola, o en su defecto por la salida estándar.


Imprimiendo con Java

Alguna vez se os ha ocurrido que algo que estaís programando necesitaís mandarlo a imprimir, si es así, lo que podeís hacer es lo siguiente:

DocFlavor flavor = DocFlavor.INPUT_STREAM.POSTSCRIPT;
   PrintRequestAttributeSet aset =
        new HashPrintRequestHashAttributeSet();
   aset.add(MediaSizeName.ISO_A4);
PrintService[] pservices =
       PrintServiceLookup.lookupPrintServices(flavor, aset);
   if (pservices.length > 0) {
       DocPrintJob pj = pservices[0].createPrintJob();
//InputStreamDoc is an implementation of the Doc interface//
       Doc doc = new InputStreamDoc("test.ps", flavor);
       try {
             pj.print(doc, aset);
        } catch (PrintException e) {
        }

Si teneís otro código podeís comentarlo en esta entrada.


Creando un KeyListener en Java

A veces nos interesa que en un JTextField se produzca una acción cuando pulsamos alguna tecla en concreto, como se puede hacer esto, pues es sencillo hacerlo con un evento de tipo KeyListener, es decir, en ved de cuando se produzca una acción, cuando se produzca un evento de teclado, para implementarlo se realiza de la siguiente forma:

import javax.swing.*;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.event.*;

// creamos nuestra clase e implementamos la interfaz KeyListener que

es la que nos va a dar la posibilidad de escuchar el teclado
public class KeyEventDemo extends JApplet implements KeyListener{
JTextField displayArea; //creamos un campo de texto, donde vamos a escribir
JTextField typingArea;// otro campo de texto donde va a aparecer lo

que escribamos en el campo de arriba

public void init() {
// en esta parte solo le damos forma a la ventanita
typingArea = new JTextField(20);
typingArea.addKeyListener(this); //y aqui esta lo importante,
//le decimos que nuestro textbox q va a escuchar el teclado
displayArea = new JTextField(20);
JPanel contentPane = new JPanel();
contentPane.setLayout(new BorderLayout());
contentPane.add(typingArea, BorderLayout.NORTH);
contentPane.add(displayArea, BorderLayout.CENTER);
setContentPane(contentPane);
}

// la interfaz keylistener tiene tres metodos, keypressed, cuando presionas una
//tecla, keytyped, cuando esta presionada, y keyreleased, cuando la sueltas
//siempre suceden las tres y dependera de tu caso el cual uses
//aqui usaremos keypressed, e es la tecla que se presiono
public void keyPressed(KeyEvent e) {
displayInfo(e); //llamamos al metodo displayinfo
}

protected void displayInfo(KeyEvent e){
int keyCode = e.getKeyCode(); //obtenemos el codigo de la tecla
String keyText = e.getKeyText(keyCode); //luego el caracter
displayArea.setText(keyText); //lo pintamos en el campo de texto de abajo
}

public void keyTyped(KeyEvent e) {}
public
void keyReleased(KeyEvent e) {}
}





Comentarios Recientes