Entradas

Mostrando las entradas de agosto, 2013

Reproductor MP3

Imagen
ReproductorMP3.java package com.dansan.reproductor; import java.io.IOException; import java.net.URL; import java.util.Timer; import java.util.TimerTask; import javax.media.CannotRealizeException; import javax.media.Codec; import javax.media.Format; import javax.media.Manager; import javax.media.NoPlayerException; import javax.media.Player; import javax.media.PlugInManager; import javax.media.format.AudioFormat; import javax.swing.JSlider; public class ReproductorMP3 { Player player; int velocidad = 1000; int cuadro; Timer tiempo; TimerTask tarea; boolean reproduciendo; public ReproductorMP3(URL url){ /* Esta es la direccion del codec que decodifica los mp3 */ String jffmpegAudioDecoder = "net.sourceforge.jffmpeg.AudioDecoder"; /* Cargamos el codec y lo guardamos en un objeto de tipo Codec */ Codec codecAudio = null; try { codecAudio = (Codec) Class.forName(jffmpegAudioDecoder).newInstance(); } catch (InstantiationException e1) { // TODO Auto

Agenda

Imagen
El programa puede actualizar, guardar, listar y eliminar contactos. Ademas permite una busqueda de un contacto por su DNI y ordenar la tabla por un criterio a eleccion. BDManagement.java package BackEnd; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class BDManagement { private String user = "root"; private String pass = "riverplate"; private String db = "jdbc:mysql://localhost:3306/contactos"; private String driver = "com.mysql.jdbc.Driver"; private Connection con; private Statement st; public BDManagement(){ try{ Class.forName(driver); con = DriverManager.getConnection(db,user,pass); st = con.createStatement(); }catch (Exception ex){ ex.printStackTrace(); } } public ResultSet listar(){ String query = "select * from agenda"; ResultSet rs = null; try { rs = st.executeQuery(query);

Visor de Imagenes

Imagen
Para el visor use un JPanel, sobre el cual se dibuja la imagen, se le aplica un zoom al pulsar el correspondiente boton, mediante el metodo paint(Graphics g). Esto se logra al llamar a repaint que a su vez llama a paint y este vuelve a pintar la imagen con las nuevas dimensiones. Ademas agregue la posibilidad de imprimir la imagen mediante la interfece Printable en la clase CuadroImagen, escribiendo el metodo print. Es bastante basico no obstante para alguien puede servir de ayuda. CuadroImagen.java package com.dansan.visor; import java.awt.Dimension; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.Image; import java.awt.RenderingHints; import java.awt.image.BufferedImage; import java.awt.print.PageFormat; import java.awt.print.Printable; import java.awt.print.PrinterException; import java.awt.print.PrinterJob; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; import javax.swing.JPanel; public class CuadroImagen extends JPane

Editor de Texto

Imagen
Este es un Editor de texto escrito en java, bastante sencillo pero que puede servir de base para algo mas serio. Consta de dos clases, ambas en el paquete com.dansan.editor. Quizas lo mas importante este en el hecho de guardar el objeto de la clase JTextPane en un archivo para luego recuperarlo al abrirlo. Esto es gracias que dicha clase implementa la interface Serializable. Los demas solo es aplicar ciertas cambios al texto seleccionado mediante SimpleAttributeSet y StyleConstants. EditorTexto.java package com.dansan.editor; import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import javax.swing.ImageIcon; import javax.swing.JFileChooser; import javax.swing.JFrame; import javax.swing.JMenu; import javax.swing.JMenuBar; import javax.swing.JMenuItem; import javax.swing.JScro

Scanner IP

Imagen
Escanea un IP pasado ,nos muestra los puertos abiertos. Para ejecutarlo se debe escribir en consola: java -jar scannerip.jar. Run.java package BackEnd; import FrontEnd.Ventana; public class Run implements Runnable{ int puerto = 0; Ventana v; int fin; public Run(int port,int fin,Ventana v){ this.v=v; puerto = port; this.fin=fin; } public void run(){ Scanner Scanner = new Scanner(puerto,fin,v); } } Scanner.java package BackEnd; import java.net.Socket; import FrontEnd.Ventana; public class Scanner { public Scanner(int puerto,int fin,Ventana v){ Socket dame; String ip=v.getCampoIP().getText(); for(int port =puerto;port<=fin;port++){ try{ dame = new Socket(ip,port); v.getAreaTexto().setText(v.getAreaTexto().getText()+"\n"+"Puerto "+port+" Abierto"); System.out.println("Puerto "+port+" Abierto"); dame.close(