Foros del Web » Programación para mayores de 30 ;) » Java »

setVisible funciona mal

Estas en el tema de setVisible funciona mal en el foro de Java en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 24/10/2012, 16:27
Avatar de 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);
    }
}
  #2 (permalink)  
Antiguo 26/10/2012, 18:21
 
Fecha de Ingreso: abril-2011
Ubicación: Guadalajara, Jalisco, Mexico
Mensajes: 27
Antigüedad: 13 años
Puntos: 4
Respuesta: setVisible funciona mal

Acabo de verificar tu programa, a lo que veo..
simplemente tienes un ligero error en cuanto añades los botones, JTextField, y los labeles, creo que solo necesitas cambiar el acomodo en el que los vas añadiendo!!

Como no se exactamente como es que quieres que se vea pues no puedo ver que es lo que intenta poner! en cada lugar!

Etiquetas: netbeans, programa, string
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:23.