Olá a todos, estou aprendendo java fazendo um sistema de ordem de serviços para a lojinha do meu irmão e para aprender eu quero fazer o código todo na unha, acredito q o design fica mais amigável e estruturável quando todos os detalhes são escritos no código, porem ao tentar exibir um “JOptionPane.showMensageDialog(null,“TEXTO”);” a caixa de dialogo simplesmente não aparece, ao clicar em qualquer lugar da tela o computador emite um som de como se tivesse uma caixa de dialogo aberta que você tem que clicar em “OK” ai eu aperto enter e volta, mas em momento algum o JOptionPane aparece na tela.
Eai @walberst, tranquilo?
É sempre bom apresentar o código para facilitar na resolução do seu problema
Então para exibir seria algo assim:
JOptionPane.showMessage(null, "Mensagem", "titulo", JOptionPane.INFO_MESSAGE);
sim, claro, o código é esse
package View;
import java.awt.Color;
import java.awt.Cursor;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.KeyEvent;
import javax.swing.BorderFactory;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
import javax.swing.SwingConstants;
import javax.swing.WindowConstants;
import Funcoes.Usuarios;
public class ViewTelaHome extends javax.swing.JFrame{
public static void main(String[] args) {
/****************************************/
/* CONFIGURAÇÃO DE EXIBIÇÃO DA JANELA */
/****************************************/
JFrame window = new JFrame("TecnoCell");
window.setSize(1366,780);
window.setAlwaysOnTop(true);
window.setResizable(false);
window.setUndecorated(true);
window.setLayout(null);
window.setVisible(true);
window.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
window.addWindowListener(new java.awt.event.WindowAdapter() {
public void windowOpened(java.awt.event.WindowEvent evt) {
for (double x = 0.0; x <= 1.0; x = x + 0.1) {
String val = x + "";
float f = Float.valueOf(val);
window.setOpacity(f);
try {
Thread.sleep(50);
} catch (InterruptedException ex) {
}
}
}
});
/****************************************/
/* PAINEL CONTAINER */
/****************************************/
JPanel painel = new JPanel();
painel.setLayout(new GridLayout(1, 1));
painel.setBackground(new Color(55, 55, 55));
painel.setBounds(0, 0, 1366, 780);
window.add(painel);
/****************************************/
/* PAINEL DO MENU LATERAL ESQUERDO */
/****************************************/
JPanel painelMenu = new JPanel();
painelMenu.setLayout(new GridLayout(1, 1));
painelMenu.setBackground(new Color(82, 30, 191));
painelMenu.setBounds(0, 0, 300, 780);
painel.add(painelMenu);
/****************************************/
/* BOTAO LOGOTIPO ENCAMINHADO A HOME */
/****************************************/
ImageIcon iconeLogo = new ImageIcon(ViewTelaHome.class.getResource("Imagens/Logo.png"));
JButton logotipo = new JButton();
logotipo.setIcon(iconeLogo);
logotipo.setLayout(new GridLayout());
logotipo.setBounds(20, 10, 255, 92);
logotipo.setBackground(new Color(0, 0, 0, 0));
logotipo.setBorder(null);
logotipo.setBorderPainted(false);
logotipo.setContentAreaFilled(false);
logotipo.setFocusPainted(false);
logotipo.setCursor(new Cursor(Cursor.HAND_CURSOR));
painelMenu.add(logotipo);
/****************************************/
/* ITEM DO MENU "VENDAS" */
/****************************************/
ImageIcon iconeVendas = new ImageIcon(ViewTelaHome.class.getResource("Imagens/Icons/001-hands-and-gestures.png"));
JButton vendas = new JButton();
vendas.setText("PDV");
vendas.setIcon(iconeVendas);
vendas.setLayout(new GridLayout(1, 1));
vendas.setBounds(0, 120, 300, 40);
vendas.setBackground(new Color(0, 0, 0, 0));
vendas.setBorder(null);
vendas.setBorderPainted(false);
vendas.setContentAreaFilled(false);
vendas.setFocusPainted(false);
vendas.setCursor(new Cursor(Cursor.HAND_CURSOR));
vendas.setFont(new Font("Tahoma", Font.PLAIN, 23));
vendas.setForeground(new Color(255, 255, 255));
vendas.setHorizontalAlignment(SwingConstants.LEFT);
vendas.setBorder(BorderFactory.createEmptyBorder(5, 20, 5, 5));
vendas.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseEntered(java.awt.event.MouseEvent evt) {
vendas.setContentAreaFilled(true);
vendas.setBackground(new Color(55, 55, 55));
}
public void mouseExited(java.awt.event.MouseEvent evt) {
vendas.setContentAreaFilled(false);
}
});
/****************************************/
/* ITEM DO MENU "ORDEM DE SERVIÇO/OS" */
/****************************************/
ImageIcon iconeOS = new ImageIcon(ViewTelaHome.class.getResource("Imagens/Icons/015-customer-support.png"));
JButton OS = new JButton();
OS.setText("OS");
OS.setIcon(iconeOS);
OS.setLayout(new GridLayout(1, 1));
OS.setBounds(0, 170, 300, 40);
OS.setBackground(new Color(0, 0, 0, 0));
OS.setBorder(null);
OS.setBorderPainted(false);
OS.setContentAreaFilled(false);
OS.setFocusPainted(false);
OS.setCursor(new Cursor(Cursor.HAND_CURSOR));
OS.setFont(new Font("Tahoma", Font.PLAIN, 23));
OS.setForeground(new Color(255, 255, 255));
OS.setHorizontalAlignment(SwingConstants.LEFT);
OS.setBorder(BorderFactory.createEmptyBorder(5, 20, 5, 5));
OS.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseEntered(java.awt.event.MouseEvent evt) {
OS.setContentAreaFilled(true);
OS.setBackground(new Color(55, 55, 55));
}
public void mouseExited(java.awt.event.MouseEvent evt) {
OS.setContentAreaFilled(false);
}
});
/****************************************/
/* ITEM DO MENU "CLIENTES" */
/****************************************/
ImageIcon iconeClients = new ImageIcon(ViewTelaHome.class.getResource("Imagens/Icons/012-target.png"));
JButton clients = new JButton();
clients.setText("CLIENTES");
clients.setIcon(iconeClients);
clients.setLayout(new GridLayout(1, 1));
clients.setBounds(0, 220, 300, 40);
clients.setBackground(new Color(0, 0, 0, 0));
clients.setBorder(null);
clients.setBorderPainted(false);
clients.setContentAreaFilled(false);
clients.setFocusPainted(false);
clients.setCursor(new Cursor(Cursor.HAND_CURSOR));
clients.setFont(new Font("Tahoma", Font.PLAIN, 23));
clients.setForeground(new Color(255, 255, 255));
clients.setHorizontalAlignment(SwingConstants.LEFT);
clients.setBorder(BorderFactory.createEmptyBorder(5, 20, 5, 5));
clients.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseEntered(java.awt.event.MouseEvent evt) {
clients.setContentAreaFilled(true);
clients.setBackground(new Color(55, 55, 55));
}
public void mouseExited(java.awt.event.MouseEvent evt) {
clients.setContentAreaFilled(false);
}
});
/****************************************/
/* ITEM DO MENU "PRODUTOS" */
/****************************************/
ImageIcon iconeProducts = new ImageIcon(ViewTelaHome.class.getResource("Imagens/Icons/002-box.png"));
JButton products = new JButton();
products.setText("PRODUTOS");
products.setIcon(iconeProducts);
products.setLayout(new GridLayout(1, 1));
products.setBounds(0, 270, 300, 40);
products.setBackground(new Color(0, 0, 0, 0));
products.setBorder(null);
products.setBorderPainted(false);
products.setContentAreaFilled(false);
products.setFocusPainted(false);
products.setCursor(new Cursor(Cursor.HAND_CURSOR));
products.setFont(new Font("Tahoma", Font.PLAIN, 23));
products.setForeground(new Color(255, 255, 255));
products.setHorizontalAlignment(SwingConstants.LEFT);
products.setBorder(BorderFactory.createEmptyBorder(5, 20, 5, 5));
products.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseEntered(java.awt.event.MouseEvent evt) {
products.setContentAreaFilled(true);
products.setBackground(new Color(55, 55, 55));
}
public void mouseExited(java.awt.event.MouseEvent evt) {
products.setContentAreaFilled(false);
}
});
/****************************************/
/* ITEM DO MENU "CAIXA" */
/****************************************/
ImageIcon iconeBox = new ImageIcon(ViewTelaHome.class.getResource("Imagens/Icons/005-money.png"));
JButton box = new JButton();
box.setText("CAIXA");
box.setIcon(iconeBox);
box.setLayout(new GridLayout(1, 1));
box.setBounds(0, 320, 300, 40);
box.setBackground(new Color(0, 0, 0, 0));
box.setBorder(null);
box.setBorderPainted(false);
box.setContentAreaFilled(false);
box.setFocusPainted(false);
box.setCursor(new Cursor(Cursor.HAND_CURSOR));
box.setFont(new Font("Tahoma", Font.PLAIN, 23));
box.setForeground(new Color(255, 255, 255));
box.setHorizontalAlignment(SwingConstants.LEFT);
box.setBorder(BorderFactory.createEmptyBorder(5, 20, 5, 5));
box.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseEntered(java.awt.event.MouseEvent evt) {
box.setContentAreaFilled(true);
box.setBackground(new Color(55, 55, 55));
}
public void mouseExited(java.awt.event.MouseEvent evt) {
box.setContentAreaFilled(false);
}
});
/****************************************/
/* ITEM DO MENU "RELATORIO" */
/****************************************/
ImageIcon iconeRelatorio = new ImageIcon(ViewTelaHome.class.getResource("Imagens/Icons/007-profits.png"));
JButton relatorio = new JButton();
relatorio.setText("RELATORIOS");
relatorio.setIcon(iconeRelatorio);
relatorio.setLayout(new GridLayout(1, 1));
relatorio.setBounds(0, 370, 300, 40);
relatorio.setBackground(new Color(0, 0, 0, 0));
relatorio.setBorder(null);
relatorio.setBorderPainted(false);
relatorio.setContentAreaFilled(false);
relatorio.setFocusPainted(false);
relatorio.setCursor(new Cursor(Cursor.HAND_CURSOR));
relatorio.setFont(new Font("Tahoma", Font.PLAIN, 23));
relatorio.setForeground(new Color(255, 255, 255));
relatorio.setHorizontalAlignment(SwingConstants.LEFT);
relatorio.setBorder(BorderFactory.createEmptyBorder(5, 20, 5, 5));
relatorio.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseEntered(java.awt.event.MouseEvent evt) {
relatorio.setContentAreaFilled(true);
relatorio.setBackground(new Color(55, 55, 55));
}
public void mouseExited(java.awt.event.MouseEvent evt) {
relatorio.setContentAreaFilled(false);
}
});
/****************************************/
/* ITEM DO MENU "CONFIGURAÇÕES" */
/****************************************/
ImageIcon iconeConfig = new ImageIcon(ViewTelaHome.class.getResource("Imagens/Icons/016-settings.png"));
JButton config = new JButton();
config.setText("CONFIGURAÇÕES");
config.setIcon(iconeConfig);
config.setLayout(new GridLayout(1, 1));
config.setBounds(0, 420, 300, 40);
config.setBackground(new Color(0, 0, 0, 0));
config.setBorder(null);
config.setBorderPainted(false);
config.setContentAreaFilled(false);
config.setFocusPainted(false);
config.setCursor(new Cursor(Cursor.HAND_CURSOR));
config.setFont(new Font("Tahoma", Font.PLAIN, 23));
config.setForeground(new Color(255, 255, 255));
config.setHorizontalAlignment(SwingConstants.LEFT);
config.setBorder(BorderFactory.createEmptyBorder(5, 20, 5, 5));
config.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseEntered(java.awt.event.MouseEvent evt) {
config.setContentAreaFilled(true);
config.setBackground(new Color(55, 55, 55));
}
public void mouseExited(java.awt.event.MouseEvent evt) {
config.setContentAreaFilled(false);
}
});
/********************************************/
/* ADICIONANDO OS ITENS DO MENU NO PAINEL */
/********************************************/
painelMenu.add(vendas);
painelMenu.add(OS);
painelMenu.add(clients);
painelMenu.add(products);
painelMenu.add(box);
painelMenu.add(relatorio);
painelMenu.add(config);
/****************************************/
/* CONFIGURAÇÕES DO PAINEL DE LOGIN */
/****************************************/
JPanel painelLogin = new JPanel();
painelLogin.setLayout(new GridLayout(1, 1));
painelLogin.setBackground(new Color(82, 30, 191));
painelLogin.setBounds(550, 250, 500, 300);
painel.add(painelLogin);
JLabel acesso = new JLabel();
acesso.setText("ACESSAR TECNOCELL");
acesso.setLayout(new GridLayout(1, 1));
acesso.setForeground(new Color(255, 255, 255));
acesso.setBounds(55, 20, 400, 50);
acesso.setFont(new Font("Tahoma", Font.PLAIN, 26));
JLabel usuario = new JLabel();
usuario.setText("USUARIO");
usuario.setLayout(new GridLayout(1, 1));
usuario.setForeground(new Color(255, 255, 255));
usuario.setBounds(100, 100, 100, 30);
usuario.setFont(new Font("Tahoma", Font.PLAIN, 15));
JTextField user = new JTextField();
user.setBounds(100, 130, 300, 30);
user.setFont(new Font("Tahoma", Font.PLAIN, 15));
user.setBackground(new Color(255, 255, 255));
user.setBorder(null);
user.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
JLabel password = new JLabel();
password.setText("SENHA");
password.setLayout(new GridLayout(1, 1));
password.setForeground(new Color(255, 255, 255));
password.setBounds(100, 160, 100, 30);
password.setFont(new Font("Tahoma", Font.PLAIN, 15));
JPasswordField pass = new JPasswordField();
pass.setBounds(100, 190, 300, 30);
pass.setFont(new Font("Tahoma", Font.PLAIN, 15));
pass.setBackground(new Color(255, 255, 255));
pass.setBorder(null);
pass.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
pass.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyPressed(java.awt.event.KeyEvent evt) {
if (evt.getKeyCode() == KeyEvent.VK_ENTER) {
//logar();
}
}
});
JButton login = new JButton();
login.setBounds(100, 240, 120, 35);
login.setText("ACESSAR");
login.setBackground(new Color(0, 0, 0, 0));
login.setFont(new Font("Tahoma", Font.PLAIN, 15));
login.setCursor(new Cursor(Cursor.HAND_CURSOR));
login.setForeground(new Color(255, 255, 255));
// login.setBorder(new RoundedBorder(20));
login.setBorderPainted(true);
login.setContentAreaFilled(false);
login.setFocusPainted(false);
login.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
String userName = user.getText();
String senha = pass.getPassword().toString();
if(logar(userName,senha) == true){
}else {
JOptionPane.showMessageDialog(null, "Usuario ou senha Inconrreto");
}
}
});
JButton sair = new JButton();
sair.setBounds(280, 240, 120, 35);
sair.setText("SAIR");
sair.setBackground(new Color(0, 0, 0, 0));
sair.setFont(new Font("Tahoma", Font.PLAIN, 15));
sair.setCursor(new Cursor(Cursor.HAND_CURSOR));
sair.setForeground(new Color(255, 255, 255));
// sair.setBorder(new RoundedBorder(20));
sair.setBorderPainted(true);
sair.setContentAreaFilled(false);
sair.setFocusPainted(false);
sair.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
System.exit(0);
}
});
/********************************************/
/* ADICIONANDO OS ITENS DO LGOIN NO PAINEL */
/********************************************/
painelLogin.add(acesso);
painelLogin.add(usuario);
painelLogin.add(user);
painelLogin.add(password);
painelLogin.add(pass);
painelLogin.add(login);
painelLogin.add(sair);
}
private static boolean logar(String user, String pass) {
//Efetuando o login
Usuarios logar = new Usuarios();
return logar.accessDao(user, pass);
}
}
To muito focado em aprender o design por código, não gosto das bagunças de código criadas pelas IDE’s e no arrasta e solta nunca fica do jeito que eu quero, e assim ta ficando com o design que eu imaginei porem o JOptionPane não ta exibindo pra ser funcional, é como se o JOptionPane estivesse sendo exibido por trás do JPanel e não sei como trazer para o primeiro plano, agradeço desde já a ajuda pela solução e qualquer diga de como melhorar meu código também será bem vinda.
O primeiro parâmetro do showMessageDialog
deveria ser o componente ou a janela “pai” do JOptionPane
e você está passando null
.
Testei seu código aqui, problema está no
window.setAlwaysOnTop(true);
window.setUndecorated(true);
Os dois em conjuntos não funciona legal, retirando o setAlwaysOnTop aparece o JOptionPane ou se retirar o Undecorated tbm, eu retiraria o setAlways…
Pode passar null que será utilizado o JFrame padrão.
Cara, deu certo, eu tava tao focado achando que o erro tava na posição do JPanel que nem lembrava que tinha colocado o JFrame para sobrepor tudo. Obrigado