class ButtonHandler implements ActionListener
{
public void actionPerformed(ActionEvent ae)
{
if (ae.getSource() == btnsair)
{
System.exit(0);
}
}
}
public static void main(String[] args) {
new CadCli().init();
Form chamando outro form
P
Sei que já exixte este post, mas não consigo fazer busca aqui. Digito uma palavra e não vem nada. Fiz pesquisa com meu nick e veio muita coisa. Como faço para chamar um form de dentro de outro através de item de menu ou botão? Tenho uma rotina que implementa uma classe ButtonHandler. Nessa classe eu chamo o System.Exit. Posso usar essa classe para colocar outros botões ou tenho que criar cada uma para cada botão? Se isso for verdade, é meio sem sentido. Abaixo minha classe com o botão sair:
3 Respostas
P
Consegui fazer. Criei uma variável do tipo da classe, criei com o método new e visualizei com setVisible(True). Bem até aí beleza. Acontece que o form vem minimizado e quando eu redimenciono ele, não aparece os botões que eu criei. Entendi então que eu preciso dar um tamanho para ele(HEIGTH E WIDTH). Isso é que eu não estou conseguindo fazer. Como faço isso? Vou postar meu código full e veja onde está errado. Tirei os import para poupar espaço aqui.
public class MenuCli extends JFrame{
private JMenu lancamento,operacoes;
private JMenuBar barmenu;
private JMenuItem cliente,compromissos,sair;
private JMenuItem consultar,alterar,excluir;
private CadCli cliente_tela;
public MenuCli(){
super("Agenda de Compromisso");
}
public void init(){
setSize(800,600);
setLocation(100,100);
cliente = new JMenuItem("Cliente");
compromissos = new JMenuItem("Compromissos");
sair = new JMenuItem("Sair");
consultar = new JMenuItem("Consultar");
alterar = new JMenuItem("Alterar");
excluir = new JMenuItem("Excluir");
lancamento = new JMenu("Lançamento");
operacoes = new JMenu("Operações");
MenuHandler mh = new MenuHandler();
cliente.addActionListener(mh);
compromissos.addActionListener(mh);
sair.addActionListener(mh);
lancamento.addActionListener(mh);
operacoes.addActionListener(mh);
lancamento.add(cliente);
lancamento.add("compromissos");
lancamento.add(sair);
operacoes.add("consultar");
operacoes.add("alterar");
operacoes.add("excluir");
barmenu = new JMenuBar();
barmenu.add(lancamento);
barmenu.add(operacoes);
setJMenuBar(barmenu);
setVisible(true);
cliente_tela = new CadCli();
}
class MenuHandler implements ActionListener{
public void actionPerformed(ActionEvent ae){
if (ae.getSource()==sair){
System.exit(0);
}//exit
if (ae.getSource()==cliente){
cliente_tela.setVisible(true);
}//cliente_tela
}//actionperformed
}//Fim da classe MenuHandler
public static void main(String[] args) {
new MenuCli().init();
}
}
P
Desculpa-me, faltou dizer quem é quem. A variável que chama o outro form é a cliente_tela e a classe é a CadCli.
P
Consegui, mas os botões dentro do outro form não aparece. Porque?
class MenuHandler implements ActionListener{
public void actionPerformed(ActionEvent ae){
if (ae.getSource()==sair){
System.exit(0);
}//exit
if (ae.getSource()==cliente){
cliente_tela = new CadCli();
cliente_tela.setSize(800, 600);
cliente_tela.setLocation(100,100);
cliente_tela.setVisible(true);
}//cliente_tela
}//actionperformed
}//Fim da classe MenuHandler
Criado 30 de janeiro de 2009
Ultima resposta 30 de jan. de 2009
Respostas 3
Participantes 1
Alura O que é Python? — um guia completo para iniciar nessa linguagem de programação Acesse agora o guia sobre Python e inicie sua jornada nessa linguagem de programação: o que é e para que serve, sua sintaxe e como iniciar nela!
Casa do Codigo Engenharia de Prompt para Devs: Um guia para aprender a... Por Ricardo Pupo Larguesa — Casa do Codigo