Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/10/2012, 16:27
Avatar de Hateoner
Hateoner
 
Fecha de Ingreso: octubre-2012
Ubicación: Madrid, Spain
Mensajes: 7
Antigüedad: 11 años, 6 meses
Puntos: 1
setVisible funciona mal

Hola buenas, aprovecho para presentarme :D Soy nuevo
en el foro y en esto de la programación. Estoy aprendiendo JAVA
siguiendo un tutorial llamado JAVA EXTREMO y en uno de los ejercicios
hacemos un programa con ventanas (JFrame) y tengo en NetBeans
el mismo código que aparece en el videotutorial sólo cambiando
el nombre de las variables pero hay un JLabel y
un JButton que aunque haya puesto setVisible en true no funcionan bien.
el JButton aparece si pasas el ratón por encima, luego si lo quitas de encima
se sigue viendo pero el JLabelpor mucho que pases el raton por donde esta situado
con setBounds() (50px más abajo de otro JLabel que si aparece) no aparece, es como si no estubiese visible. no se donde fallé
en el código. Espero su ayuda y gracias de antemano aquí les dejo el código
para que vean. Los objetos que no se ven son newtel y btnnew

Código:
package personal.assistant;
/**
 * @author Hateoner
 */
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.util.*;
import javax.swing.*;

public class PersonalAssistant extends JFrame implements ActionListener{
   // Variables de Swing
    private JMenuBar barra;
    private JMenu menu1;
    private JMenuItem menuitem1, menuitem2, menuitem3;
    private JTextField namec, telc, busname;
    private JLabel newname, newtel, imtel, imname, nameprog, nameauth, ver, busca;
    private JButton bt, btnnew, btnbusca;
   // Resto de Variables
    Formatter newarxiv;
    Scanner x;
    
    public PersonalAssistant(){
        setLayout(null);
     //Textos Introducción
        nameprog = new JLabel("Hateoner\'s Personal Assistant");
            nameprog.setBounds(0,0,180,30);
            add(nameprog);
        nameauth = new JLabel("Hateoner");
            nameauth.setBounds(0,30,180,30);
            add(nameauth);
        ver = new JLabel("Versión 1.0");
            ver.setBounds(0, 50, 180, 30);
            add(ver);
     //Menu Superior
        barra = new JMenuBar();
            setJMenuBar(barra);
        menu1 = new JMenu("Archivo");
            barra.add(menu1);
            menuitem1 = new JMenuItem("Nuevo..");
            menuitem1.addActionListener(this);
            menu1.add(menuitem1);
            
            menuitem2 = new JMenuItem("Buscar");
            menuitem2.addActionListener(this);
            menu1.add(menuitem2);
            
            menuitem3 = new JMenuItem("Salir");
            menuitem3.addActionListener(this);
            menu1.add(menuitem3);
    }
    
    @Override
    public void actionPerformed (ActionEvent e){
        Container f = this.getContentPane();
        if(e.getSource()==menuitem1){
          //Hide Previous Elements  
            nameprog.setVisible(false);
            ver.setVisible(false);
            nameauth.setVisible(false);
          //Form
            newname = new JLabel("Nuevo nombre:");
                newname.setBounds(10, 35, 180, 30);
                add(newname);
                newname.setVisible(true);                
            newtel = new JLabel("Nuevo teléfono:");
                newtel.setBounds(10, 70, 180, 30);
                add(newtel);
                newtel.setVisible(true);              
            namec = new JTextField();
                namec.setBounds(170,35,180,30);
                add(namec);
                namec.setVisible(true);                
            telc = new JTextField();
                telc.setBounds(170, 70, 180, 30);
                add(telc);
                telc.setVisible(true);                
            btnnew = new JButton("Crear");
                btnnew.setBounds(10,120,200,30);
                add(btnnew);
                btnnew.setVisible(true);
                btnnew.addActionListener(this);
        }
        if(e.getSource()==menuitem2){
            
        }
        if(e.getSource()==menuitem3){
            System.exit(0);
        }
    }
    public static void main(String[] args) {
        PersonalAssistant wnd = new PersonalAssistant();
        wnd.setBounds(10, 20, 640, 250);
        wnd.setVisible(true);
    }
}