Ajuda na construÇÃo de um menu por favor

1 resposta
F

SOU NOVO EM JAVA E SEI QUE A GALERA AQUI É FERA, ESTOU COM O SEGUINTE PROBLEMA: NA FACULDADE PEDIRAM PARA FAZER UM TRABALHO E COMPOR ALGUMAS TELAS. AI ESTA O PROBLMA JÁ FIZ TODA A PARTE DE PROGRAMAÇÃO MAS NÃO CONSIGO COMPOR AS TELAS CORRETAMENTE. ESTOU COLOCANDO O CÓDIGO QUE EU FIZ E SE ALGUÉM PUDER ME AJUNDAR ME MOSTRANDO COMO FAÇO PARA CRIAR O MENU ALINHADO CORRETAMENTE EU FICARIA MUITO AGRADECIDO.

O MENU TEM O SEGINTE LAYOUT.

MENU

1 - CADASTRO DE CLIENTE
2 - GERENCIAR FILMES
3 - SAIR

[ ] //OPÇÃO QUE O USUARIO VAI DIGITAR (JTEXTFIELD)

CÓDIGO CRIADO :

package trabalho_de_java;

import java.awt.*;
import javax.swing.*;
import javax.swing.JOptionPane;
import javax.swing.JApplet;
import java.awt.event.*;


public class PROGRAMA_PRINCIPAL extends JFrame
{   
    JTextField tf1;
    public PROGRAMA_PRINCIPAL()
    {
        
    }
    public PROGRAMA_PRINCIPAL(String nome)
    {
        super(nome);
        JPanel pane = new JPanel();
        JLabel menu = new JLabel("MENU");//Apresnta um label com o   nome menu
        JLabel op1 = new JLabel("1 - CADASTRO DE CLIENTE"); // primeira opção da tela de menu
        JLabel op2 = new JLabel("2 - GERENCIAMENTO DE FITAS"); //segunda opção do menu principal
        JLabel op3 = new JLabel("3 - SAIR"); //terceira opção do menu principal
        tf1 = new JTextField(5); //campo para usuario digitar sua opção
        
       // adicionando os campos no painel
        pane.setLayout( new GridLayout(20, 5));
             
        pane.add(menu); 
        pane.add(op1);
        pane.add(op2);
        pane.add(op3);
        pane.add(tf1);
        
        setContentPane(pane);
        pack();
        setSize(640,480);
        setVisible(true);
       
        JTextFieldHundler Jhandler = new JTextFieldHundler();
        tf1.addActionListener(Jhandler);
        
    }
    private class JTextFieldHundler implements ActionListener
    {
          int var1;
          String var2,var3;
          public void actionPerformed(ActionEvent event) 
          {
              
              if(event.getSource() == tf1)
              {
                  var2=tf1.getText();
                  var1=Integer.parseInt(var2);
                  if(var1 == 1)
                  {
                      setVisible(false);
		          JANELA_CLIENTE JC = new JANELA_CLIENTE("SISTEMA GERENCIADOR DE FILMES");
                      JC.setVisible(true);
                  }
                  if(var1 == 2)
                  {
                      setVisible(false);
		          JANELA_FILMES JF = new JANELA_FILMES("SISTEMA GERENCIADOR DE FILMES");
		          JF.setVisible(true);
                     
                  }
                  if(var1 == 3)
                  {
                      
                      JOptionPane.showMessageDialog(null,"SISTEMA FINALIZADO");
		          setVisible(false);
                  }
                  
              }
              
          
          }
          
      }
    public static void main(String args[])
    {
        PROGRAMA_PRINCIPAL PP = new PROGRAMA_PRINCIPAL("SISTEMA GERENCIADOR DE FILMES");
    }
    
    
}

[color="red"]editado por Felipe: use bbcode para melhorar a visualizacao do codigo[/color]

1 Resposta

F

nessa linha:

pane.setLayout( new GridLayout(20, 5));

troque para:

pane.setLayout( new GridLayout(4, 1));

e remova essa linha:

setSize(640,480);

pois o metodo pack() serve para que a janela se ajuste aos componentes, se vc jah esta pondo ele do tamanho ideal para os componentes n faz sentido logo apos setar outro tamanho…

Criado 22 de novembro de 2004
Ultima resposta 22 de nov. de 2004
Respostas 1
Participantes 2