»
S
I
D
E
B
A
R
«
Creando un componente basado en Software Libre – III Parte
Diciembre 31st, 2009 by John Carlos Arrieta Arrieta


Simbiotica


Creative Commons License



www.simbiotica.com.co


Contáctenos…

Esta sitio y todo su contenido  está protegida por
licencia de Creative Commons

Creado  un administrador de tareas escrito en Java

Cordial saludo a todo mis lectores.

Primero que todo hoy 31 de diciembre  de 2009 les deseo de todo corazón y un prospero año nuevo, démosle gracias a Dios todo poderoso  por otros año mas de vida,  por todas las cosa buenas que nos pasaron en el transcurso de este año, pidámosle con mucha fe que nos ayude a olvidar y a superar las los momentos malos que pasamos, que nos ayude perdonar a todas esas personas que nos odian, que nos hicieron y nos quieren hacer daño, que cambie sus corazones para que vivan felices como nosotros lo hacemos en gracias de Dios,  pidámosle también que nos valla muy bien en este nuevo año y que todas nuestras metas y beneficios que el Señor nos tiene deparados se cumpla.

Bueno después de una corta pero sincera oración dirigida a Dios nuestro Señor, proseguimos con este último artículo que he preparado para ustedes este fin de año 2009, el cual es la continuación  de Creando un componente basado en Software Libre – I Parte y Creando un componente basado en Software Libre – II Parte, en los cuales les he enseñado las conceptos básicos y pautas necesarias que debemos seguir al momento que deseemos  desarrollar un software libre, ya sea con código escrito 100% por nosotros, o integrándolo con alguna librería o herramienta (cualquier software) de Software libre que  hayamos seleccionado  para nuestro dar mayor funcionalidad o agilizar nuestro software.

En esta ocasión voy a enseñarles como hacer uso del componente que SL (software libre)  que fuimos desarrollado en los dos artículos pasados, la idea básica es hacer un Administrador de Tareas de tareas básico, muy parecido al Administrador de Tareas que viene con MS-Windows.

Si analizan bien el código fuente de este proyecto, podrán aprender algunas cosas muy prácticas, como por ejemplo:

  • Trabajo con componentes de GUI tipo Grillas, también conocidas como DataGrid o Tablas.
  • Trabajar con Paneles de pestañas.
  • Trabajar con Iconos, aunque eso ya lo he explicado en anteriores artículos.
  • Trabajar con Menús emergentes, los del clic derecho.
  • Colocar nuevos controles y componentes de GUI en la paleta de componentes GUI de NetBeans
  • Trabajar con una librería de SL llamada Swing-X, la cual mejora substancialmente la funcionalidad de la mayoría de contenedores y controles de GUI del paquete swing que viene incluido dentro del JSDK.
  • Volveremos a recordar cómo utilizar mi componente IconoSimbiótica, el cual les presente en este artículo Un icono en la barra de Tareas muy practico.

Manos a la obra.

Antes de comenzar a escribir el código java necesario para nuestro JTaskManager, quiero mostrarle  unos pequeños pantallazos de la aplicación final.

image0013

La ventana principal con información sobre los procesos que se están ejecutando en el mi computador personal al momento de ejecutar el este programa.

image0033

He utilizado el control JXTable de la librería de SL SwingX, de la comunidad de SL SwingLab, este componentes a simple vista parece exactamente igual que el componente JTable de la librería javax.swing del JSDK de SunMicrosystem, pero la verdad es que hereda de este ultimo y lo mejora substancialmente, por ejemplo tiene una opción para buscar datos dentro de la Grilla y dando doble clic sobre los nombres de las columnas, se puede ordenar los datos según la columna seleccionada, aquí podemos ver un ejemplo de búsqueda.

image0054

He colocado un menú emergente con opciones sobre la Grilla para que su funcionalidad sea similar a la del TaskManager de MS, también he colocado unos mensajes de utilería JToolkitText, en ese caso advirtiendo que algunos procesos (muy pocos),  necesitan de más de varios intentos para poder finalizar su ejecución.

image0073

Aquí podemos ver las opciones de  la barra de menú JMenuBar, una de las opciones aculata la ventana del escritorio del PC, tal y como ocurre con el programa original de MS, la última opción finaliza por completo el programa, la primera termina la ejecución del proceso seleccionado en la grilla, en este caso de mi navegador favorito, y la segunda opción actualiza la lista de procesos en ejecución, para ver si se ha ejecutado algún programa mas,

La función del botón actualizar puede programarse para que se ejecute de forma automática, tal y como ocurre en con el programa de MS (Microsoft).

Esto se puede hacer de varias formas, una de ellas (mi favorita) es utilizando un temporizador Timer y una tarea temporizada TimerTask, la tarea puede ser el método mostrarProcesos de la clase JTaskManager, el cual se puede temporizar para que se ejecute cada tiempo deseado, esto se hace con un objeto de la clase Timer.

La segunda forma es utilizando hilos, en realidad los Timer y TimerTask son otra forma de utilizar Hilos pero más práctica, los hilos se pueden trabajar con las clases Thread y Runnable, en uno de mis articulo explico aun poco del uso de hilos, y en este otro.

image0091

Aquí se puede ver el uso de mi componente para utilizar un practico icono en la barra de tareas, le he hecho algunas modificaciones para actualizar con el logo Simbiótica, y unos enlaces a mi sitio web personal y al sitio web de Simbiotica.

image0111

Aquí se puede apreciar el icono que se coloca en la barra de tareas al momento de ejecutar la aplicación.

image0132

Por último,  les muestro el menú del icono en la barra de tareas, el cual tiene predefino dos ítems, acerca de… el cual muestra la el splash con el logo de simbiótica, que se puede ver en la el pantallazo anterior, el ítem salir, el cual notifica que se va a cerrar completamente la aplicación, esta notificación requiere de la confirmación del usuario.

He desarrollado este componente para que pueda ser muy personalizado, se le pueden agregar o quitar los ítem de opciones que deseen, menos los dos ítem por defecto, al igual que se le puede cambiar la imagen por defecto del icono y de la ventana acerca de, aquí les coloco el enlace hacia el articulo que hice cuando lo desarrolle, como explico en este articulo, no es nada del otro mundo, es solo la utilización de la clase TrayIcon que viene incluida en el JSDK 1.6, lo que he hecho es personalizarla un poco para hacer de su uso algo mas practico en mis proyecto.

En el articulo numero 4 de esta  serie, voy explicar con detalles las partes mas importantes del desarrollo de esta aplicación, tal ycomo le he venido haciendo, en artículos anteriores, paso a paso.

Bueno hasta aquí todo   por este año 2009, espero de corazón que para el año entrante, ósea mañana, en adelante puedan seguir aprendiendo mucho y siendo magnificas personas, recuerden que la riqueza y el aprecio de las personas, no está en un gran puesto laboral, ni en los títulos que haya alcanzado, ni por ser lambón, ni en hacerle daño a los demás, solo por tener monopolizado un cargo,  como tres personas que yo conozco,  la grandeza de las personas esta en los buenos sentimientos que ofrecemos sin interés a los demás, en las ganas de ayudar y no perjudicar a los demás por satisfacer nuestros intereses personales, la grandeza de una persona es ser lo más sincera y colaboradora con los demás, sin importar su condición social, raza o credo, recuerden que en la tierra se goza de los males que hacemos, pero algún día tarde o temprano también pagaremos con creses todo el daño que hayamos hecho.

Sin más este su servidor y amigo.

Descargar el proyecto compilado:

jtaskmanader-1_0-scr-release-31-12-2009

Descarga el codigo fuente del proyecto aquí:

jtaskmanager_10-fuentes-liberados_by_simbiotica

908 Visitas hoy

Comparte en tu Web:
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Blogplay
  • email
  • Reddit
  • RSS
  • StumbleUpon

5 Responses  
  • Bruno writes:
    Abril 27th, 2010 at 13:48

    John:

    Te queria hacer una consulta sobre las pestañas, ¿que evento ocurre cuando seleccionas una pestaña?
    Es que quiero codificar una accion para cuando el usuario selecciona un jPanel.

    Saludos
    Bruno

  • Juan writes:
    Mayo 10th, 2010 at 21:39

    Hola, gracias por el programa y por el codigo. Estoy empezando con java y esta me sirve mucho. Tiene muy buena pinta el programa.

    Saludos

    • John Carlos Arrieta Arrieta writes:
      Mayo 11th, 2010 at 23:29

      Tu participación es el mejor agradecimiento que puedo recibir.

      Gracias a ti por leer, visitar y hacer parte de este sitio Web.

  • elis writes:
    Junio 1st, 2010 at 18:29

    ola esta bueno el materialme ha servido de mucho buen pos he


Por favor deje sus Comentarios aquí:

© Gurpo de Investigacion DEARTICA