Boa tarde,
gostaria de saber se tem como eu mudar a cor de 1 jpanel ao passar o mouse sobre ele, é que na verdade eu tenho vontade de fazer como se fosse 1 JAVASCRIPT(onmouse) algo desse tipo…
Outra pergunta seria, como se faz esses menus que quando passa o mouse sobre ele, ele recebe destaque?
Info:
Em Aplicação desktop.
JAVA SE.
desculpa se não consegui mim expressar bem.
Grato.
[RESOLVIDO] Como mudar a cor de 1 JPanel com mouseEntered
2 Respostas
E
Rode o exemplo abaixo.
package guj;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.EventQueue;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class ExemploMudarCorJPanel extends JFrame {
private JPanel pnlNorte;
private JLabel lblJpanelNorte;
private JPanel pnlLeste;
private JLabel lblJpanelLeste;
private JPanel pnlOeste;
private JLabel lblJpanelOeste;
private JPanel pnlSul;
private JLabel lblJpanelSul;
private JPanel pnlCentral;
private JLabel lblJPanelCentral;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
ExemploMudarCorJPanel frame = new ExemploMudarCorJPanel();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public ExemploMudarCorJPanel() {
setBounds(100, 100, 450, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
getContentPane().add(getPnlNorte(), BorderLayout.NORTH);
getContentPane().add(getPnlLeste(), BorderLayout.WEST);
getContentPane().add(getPnlOeste(), BorderLayout.EAST);
getContentPane().add(getPnlSul(), BorderLayout.SOUTH);
getContentPane().add(getPnlCentral(), BorderLayout.CENTER);
}
private JPanel getPnlNorte() {
if (pnlNorte == null) {
pnlNorte = new JPanel();
pnlNorte.add(getLblJpanelNorte());
pnlNorte.addMouseListener(new MouseAdapter() {
private Color clrPanel = null;
@Override
public void mouseEntered(MouseEvent e) {
clrPanel = getPnlNorte().getBackground();
getPnlNorte().setBackground(Color.YELLOW);
}
@Override
public void mouseExited(MouseEvent e) {
if (clrPanel != null)
getPnlNorte().setBackground(clrPanel);
}
});
}
return pnlNorte;
}
private JLabel getLblJpanelNorte() {
if (lblJpanelNorte == null) {
lblJpanelNorte = new JLabel("JPanel Norte");
}
return lblJpanelNorte;
}
private JPanel getPnlLeste() {
if (pnlLeste == null) {
pnlLeste = new JPanel();
pnlLeste.add(getLblJpanelLeste());
pnlLeste.addMouseListener(new MouseAdapter() {
private Color clrPanel = null;
@Override
public void mouseEntered(MouseEvent e) {
clrPanel = getPnlLeste().getBackground();
getPnlLeste().setBackground(Color.BLUE);
}
@Override
public void mouseExited(MouseEvent e) {
if (clrPanel != null)
getPnlLeste().setBackground(clrPanel);
}
});
}
return pnlLeste;
}
private JLabel getLblJpanelLeste() {
if (lblJpanelLeste == null) {
lblJpanelLeste = new JLabel("JPanel Leste");
}
return lblJpanelLeste;
}
private JPanel getPnlOeste() {
if (pnlOeste == null) {
pnlOeste = new JPanel();
pnlOeste.addMouseListener(new MouseAdapter() {
private Color clrPanel = null;
@Override
public void mouseEntered(MouseEvent e) {
clrPanel = getPnlOeste().getBackground();
getPnlOeste().setBackground(Color.GREEN);
}
@Override
public void mouseExited(MouseEvent e) {
if (clrPanel != null)
getPnlOeste().setBackground(clrPanel);
}
});
pnlOeste.add(getLblJpanelOeste());
}
return pnlOeste;
}
private JLabel getLblJpanelOeste() {
if (lblJpanelOeste == null) {
lblJpanelOeste = new JLabel("JPanel Oeste");
}
return lblJpanelOeste;
}
private JPanel getPnlSul() {
if (pnlSul == null) {
pnlSul = new JPanel();
pnlSul.add(getLblJpanelSul());
pnlSul.addMouseListener(new MouseAdapter() {
private Color clrPanel = null;
@Override
public void mouseEntered(MouseEvent e) {
clrPanel = getPnlSul().getBackground();
getPnlSul().setBackground(Color.BLUE);
}
@Override
public void mouseExited(MouseEvent e) {
if (clrPanel != null)
getPnlSul().setBackground(clrPanel);
}
});
}
return pnlSul;
}
private JLabel getLblJpanelSul() {
if (lblJpanelSul == null) {
lblJpanelSul = new JLabel("JPanel Sul");
}
return lblJpanelSul;
}
private JPanel getPnlCentral() {
if (pnlCentral == null) {
pnlCentral = new JPanel();
pnlCentral.addMouseListener(new MouseAdapter() {
private Color clrPanel = null;
@Override
public void mouseEntered(MouseEvent e) {
clrPanel = getPnlCentral().getBackground();
getPnlCentral().setBackground(Color.RED);
}
@Override
public void mouseExited(MouseEvent e) {
if (clrPanel != null)
getPnlCentral().setBackground(clrPanel);
}
});
pnlCentral.add(getLblJPanelCentral());
}
return pnlCentral;
}
private JLabel getLblJPanelCentral() {
if (lblJPanelCentral == null) {
lblJPanelCentral = new JLabel("JPanel Central");
}
return lblJPanelCentral;
}
}
Rode o exemplo abaixo.package guj; import java.awt.BorderLayout; import java.awt.Color; import java.awt.EventQueue; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; public class ExemploMudarCorJPanel extends JFrame { private JPanel pnlNorte; private JLabel lblJpanelNorte; private JPanel pnlLeste; private JLabel lblJpanelLeste; private JPanel pnlOeste; private JLabel lblJpanelOeste; private JPanel pnlSul; private JLabel lblJpanelSul; private JPanel pnlCentral; private JLabel lblJPanelCentral; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { ExemploMudarCorJPanel frame = new ExemploMudarCorJPanel(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public ExemploMudarCorJPanel() { setBounds(100, 100, 450, 300); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); getContentPane().add(getPnlNorte(), BorderLayout.NORTH); getContentPane().add(getPnlLeste(), BorderLayout.WEST); getContentPane().add(getPnlOeste(), BorderLayout.EAST); getContentPane().add(getPnlSul(), BorderLayout.SOUTH); getContentPane().add(getPnlCentral(), BorderLayout.CENTER); } private JPanel getPnlNorte() { if (pnlNorte == null) { pnlNorte = new JPanel(); pnlNorte.add(getLblJpanelNorte()); pnlNorte.addMouseListener(new MouseAdapter() { private Color clrPanel = null; @Override public void mouseEntered(MouseEvent e) { clrPanel = getPnlNorte().getBackground(); getPnlNorte().setBackground(Color.YELLOW); } @Override public void mouseExited(MouseEvent e) { if (clrPanel != null) getPnlNorte().setBackground(clrPanel); } }); } return pnlNorte; } private JLabel getLblJpanelNorte() { if (lblJpanelNorte == null) { lblJpanelNorte = new JLabel("JPanel Norte"); } return lblJpanelNorte; } private JPanel getPnlLeste() { if (pnlLeste == null) { pnlLeste = new JPanel(); pnlLeste.add(getLblJpanelLeste()); pnlLeste.addMouseListener(new MouseAdapter() { private Color clrPanel = null; @Override public void mouseEntered(MouseEvent e) { clrPanel = getPnlLeste().getBackground(); getPnlLeste().setBackground(Color.BLUE); } @Override public void mouseExited(MouseEvent e) { if (clrPanel != null) getPnlLeste().setBackground(clrPanel); } }); } return pnlLeste; } private JLabel getLblJpanelLeste() { if (lblJpanelLeste == null) { lblJpanelLeste = new JLabel("JPanel Leste"); } return lblJpanelLeste; } private JPanel getPnlOeste() { if (pnlOeste == null) { pnlOeste = new JPanel(); pnlOeste.addMouseListener(new MouseAdapter() { private Color clrPanel = null; @Override public void mouseEntered(MouseEvent e) { clrPanel = getPnlOeste().getBackground(); getPnlOeste().setBackground(Color.GREEN); } @Override public void mouseExited(MouseEvent e) { if (clrPanel != null) getPnlOeste().setBackground(clrPanel); } }); pnlOeste.add(getLblJpanelOeste()); } return pnlOeste; } private JLabel getLblJpanelOeste() { if (lblJpanelOeste == null) { lblJpanelOeste = new JLabel("JPanel Oeste"); } return lblJpanelOeste; } private JPanel getPnlSul() { if (pnlSul == null) { pnlSul = new JPanel(); pnlSul.add(getLblJpanelSul()); pnlSul.addMouseListener(new MouseAdapter() { private Color clrPanel = null; @Override public void mouseEntered(MouseEvent e) { clrPanel = getPnlSul().getBackground(); getPnlSul().setBackground(Color.BLUE); } @Override public void mouseExited(MouseEvent e) { if (clrPanel != null) getPnlSul().setBackground(clrPanel); } }); } return pnlSul; } private JLabel getLblJpanelSul() { if (lblJpanelSul == null) { lblJpanelSul = new JLabel("JPanel Sul"); } return lblJpanelSul; } private JPanel getPnlCentral() { if (pnlCentral == null) { pnlCentral = new JPanel(); pnlCentral.addMouseListener(new MouseAdapter() { private Color clrPanel = null; @Override public void mouseEntered(MouseEvent e) { clrPanel = getPnlCentral().getBackground(); getPnlCentral().setBackground(Color.RED); } @Override public void mouseExited(MouseEvent e) { if (clrPanel != null) getPnlCentral().setBackground(clrPanel); } }); pnlCentral.add(getLblJPanelCentral()); } return pnlCentral; } private JLabel getLblJPanelCentral() { if (lblJPanelCentral == null) { lblJPanelCentral = new JLabel("JPanel Central"); } return lblJPanelCentral; } }
Bom amigo Rodei a aplicação acima, isso mesmo... que eu estava precisando muito obrigado.
Grato ;D
Criado 16 de maio de 2013
Ultima resposta 17 de mai. de 2013
Respostas 2
Participantes 2
Alura Git Flow: entenda o que é, como e quando utilizar Entenda o que é Git Flow, como funciona seu fluxo com branches como Master, Develop, Feature, Release e Hotfix, além de vantagens e desvantagens.
Casa do Codigo Casa do Codigo — Livros de tecnologia Livros de programacao, infraestrutura e inovacao