Menu Dinamico
Menu Dinamico
Ase poco vi este efecto en una pagina y me decidi a hacerlo en java, no fue tan dificil como pense al comienzo, fue bastante rapido.
Imagenes
Depronto a alguien le interese usarlo en sus proyectos, aqui esta para que lo disfruten.
Solo dejo el codigo de la clase principal y el del panelmenu, por que sino haria muy extenso el post.
Clase Principal
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class Principal extends JApplet{
JTextField txtusuario=new JTextField(10);
JPasswordField txtclave=new JPasswordField(10);
public Principal(){
colocarSkin();
setLayout(new BorderLayout());
JPanel pafuera=new JPanel(new FlowLayout());
JPanel pgrid=new JPanel(new GridLayout(1,5));
pafuera.add(pgrid);
panelmenu pm1=new panelmenu("Inicio");
panelmenu pm2=new panelmenu("Registrar");
panelmenu pm3=new panelmenu("Eliminar");
panelmenu pm4=new panelmenu("Buscar");
panelmenu pm5=new panelmenu("Contacto");
pgrid.add(pm1);
pgrid.add(pm2);
pgrid.add(pm3);
pgrid.add(pm4);
pgrid.add(pm5);
add(pafuera);
}
public void colocarSkin(){
try {
UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (UnsupportedLookAndFeelException e) {
e.printStackTrace();
}
}
}
Clase panelmenu
import java.awt.Cursor;
import java.awt.Graphics;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import javax.swing.ImageIcon;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
public class panelmenu extends JPanel implements MouseListener{
ImageIcon img;
boolean sw=false;
int y=0;
String nombremenu;
public panelmenu(String nom){
nombremenu=nom;
img=new ImageIcon(this.getClass().getResource("../lib/inicio2.png"));
addMouseListener(this);
setPreferredSize(new Dimension((80),40));
}
public void paintComponent(Graphics g){
super.paintComponents(g);
g.drawImage(img.getImage(), 0, y, 80, 80, this);
g.setFont(new Font("Verdana",Font.BOLD,12));
g.setColor(Color.WHITE);
g.drawString(nombremenu, 10, 25+y);
g.setColor(Color.BLACK);
g.drawString(nombremenu, 10, 65+y);
}
@Override
public void mouseClicked(MouseEvent arg0) {
JOptionPane.showMessageDialog(null,"Presionaste el menu " + nombremenu);
}
@Override
public void mouseEntered(MouseEvent e) {
sw=true;
hilosubir hs=new hilosubir(this);
hs.start();
setCursor(new Cursor(Cursor.HAND_CURSOR));
}
@Override
public void mouseExited(MouseEvent arg0) {
sw=false;
hilobajar hb=new hilobajar(this);
hb.start();
setCursor(null);
}
@Override
public void mousePressed(MouseEvent arg0) {
}
@Override
public void mouseReleased(MouseEvent arg0) {
}
}
El proyecto completo lo pueden ver en Java Zone, ademas pueden descargar el proyecto desde aqui.
- roger1345's blog
- Inicie sesión o regístrese para enviar comentarios
Comentarios
Buen aporte, felicidades
Buen aporte, felicidades
simpre quise saberlo
simpre quise saber como se hacian esos menus en java, gracias
@roger1345
Como siempre Roger.... gracias por el aporte.
El link de descarga es de megaupload
oye mi estimado en link de descarga del proyecto completo es de un servidor de Megaupload, ese servidor ya no existe lo dieron de baja desde hace mas de 3 años
Creo que el post es desde
Creo que el post es desde antes del cierre de mega upload
aun así funciona
solo faltaron las demás clases (hilos) que se corren cuando le das click al item de un determiando botón.
auque también existe un framework Substance que sirve para eso.