Fórum Duvida JFrame #18963
30/08/2007
0
galera é o seguinte possuo um JFrame principal em minha aplicação, tenho um Jmenu e neste menu tem lah ´cadastro´, bom quando clicar em ´cadastro ele cria um outro JFrame com a tela de ´cadastro´, para esta tela eu testei tanto com o JFrame quanto com um JDialog, eu gostei mais do JDialog pq no momento que vc abre, a aplicação trava as janelas e vc soh fica focado na janela que foi aberta, não podendo voltar a tela do principal, apenas se vc fechar o JDialog assim liberando para voltar no principal.
ja o Jframe quando vc abre a janela de cadastro, vc pode ficar alterando entre as janelas.
bom gostaria de saber se é possivel travar as janelas e colocar uma em focus, igual o que o JDialog faz, mas utilizando um Jframe???
se vcs testarem entederam do que eu estou falando, atravez de um Jrame chamem outras 2 janelas 1 Jframe e 1 JDialog, vcs veram a diferença ao tentar voltar para a janela principal.
Valeu!!
ja o Jframe quando vc abre a janela de cadastro, vc pode ficar alterando entre as janelas.
bom gostaria de saber se é possivel travar as janelas e colocar uma em focus, igual o que o JDialog faz, mas utilizando um Jframe???
se vcs testarem entederam do que eu estou falando, atravez de um Jrame chamem outras 2 janelas 1 Jframe e 1 JDialog, vcs veram a diferença ao tentar voltar para a janela principal.
Valeu!!
Shakall
Curtir tópico
+ 0
Responder
Posts
27/03/2008
Lscheid
Amigo, boa tarde.
Execute este exemplo, veja se a minha solução serve para você.
Um abraço,
Lucas
Execute este exemplo, veja se a minha solução serve para você.
Um abraço,
Lucas
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import javax.swing.JButton;
import javax.swing.JFrame;
public class TesteFrames extends JFrame {
private static final long serialVersionUID = 1L;
private JButton botaoCadastro = new JButton("Cadastro");
private TelaCadastro telaDeCadastro = null;
public TesteFrames() {
setTitle("Tela Principal do Sistema");
setSize(300, 300);
setResizable(false);
// centraliza frame
setLocationRelativeTo(null);
Container container = getContentPane();
container.setLayout(null);
setDefaultCloseOperation(EXIT_ON_CLOSE);
botaoCadastro.setBounds(100, 100, 100, 25);
botaoCadastro.addActionListener(new TrataCliqueBotao());
container.add(botaoCadastro);
}
class TrataCliqueBotao implements ActionListener {
public void actionPerformed(ActionEvent arg0) {
if (telaDeCadastro == null) {
telaDeCadastro = new TelaCadastro();
telaDeCadastro.setVisible(true);
botaoCadastro.setEnabled(false);
}
}
}
class TelaCadastro extends JFrame implements WindowListener {
private static final long serialVersionUID = 1L;
public TelaCadastro() {
setTitle("Cadastro");
setSize(200, 200);
setResizable(false);
// centraliza frame
setLocationRelativeTo(null);
this.addWindowListener(this);
}
public void windowOpened(WindowEvent arg0) {
}
public void windowClosing(WindowEvent arg0) {
telaDeCadastro.dispose();
telaDeCadastro = null;
botaoCadastro.setEnabled(true);
}
public void windowClosed(WindowEvent arg0) {
}
public void windowIconified(WindowEvent arg0) {
}
public void windowDeiconified(WindowEvent arg0) {
}
public void windowActivated(WindowEvent arg0) {
}
public void windowDeactivated(WindowEvent arg0) {
}
}
public static void main(String[] args) {
TesteFrames tf = new TesteFrames();
tf.setVisible(true);
}
}
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)