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

como poner un botón invisible

Estas en el tema de como poner un botón invisible en el foro de Java en Foros del Web. Hola mis estimados colegas estoy haciendo un programa en netbeans 6.8 e el cual tengo 2 frames en el frame1 tengo un boton en cual ...
  #1 (permalink)  
Antiguo 06/02/2012, 12:16
 
Fecha de Ingreso: enero-2011
Ubicación: Cuba
Mensajes: 124
Antigüedad: 13 años, 3 meses
Puntos: 1
Sonrisa como poner un botón invisible


Hola mis estimados colegas estoy haciendo un programa en netbeans 6.8 e el cual tengo 2 frames en el frame1 tengo un boton en cual quiero que al dar clic me desactive el otro boton del frame2.....lo he intentado hacer pero no tiene efecto.. espero que me puedan ayudar....gracias de antemano
  #2 (permalink)  
Antiguo 06/02/2012, 14:41
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: como poner un botón invisible

Depende de la visibilidad de la instancia del boton. No deberia ser dificil pero es dificil decirte como sin ver el codigo.

Si tienes visibilidad publica y tienes una instancia en frame 1, basta con hacer algo como:
Código Javascript:
Ver original
  1. frame2.botonAEsconder.setVisible(false);
  #3 (permalink)  
Antiguo 07/02/2012, 12:10
 
Fecha de Ingreso: enero-2011
Ubicación: Cuba
Mensajes: 124
Antigüedad: 13 años, 3 meses
Puntos: 1
Respuesta: como poner un botón invisible

eso es lo que hago pero no hace nada.......
este es el metodo que hice en el frame1 para llamarlo en el Frame2


---- Farme1--------

public void invisible(){

JB_Aceptar.setEnable(false);

}

------- y lo llamo en el Frame2 .... en el acction performe de un boton-----------

Frame1 f= new Frame1();
f. invisible();

esto es todo pero no hace nada..........
  #4 (permalink)  
Antiguo 09/02/2012, 14:46
 
Fecha de Ingreso: abril-2011
Mensajes: 1.342
Antigüedad: 13 años
Puntos: 344
Respuesta: como poner un botón invisible

Pon más código de la parte en la que llamas desde el frame 2 para desactivar el botón del frame 1, porque lo que has puesto desde luego no funcionaría tal cual y puede ser el problema.
  #5 (permalink)  
Antiguo 10/02/2012, 13:10
 
Fecha de Ingreso: enero-2011
Ubicación: Cuba
Mensajes: 124
Antigüedad: 13 años, 3 meses
Puntos: 1
Respuesta: como poner un botón invisible

lo que hago es lo siguiente:

1ro --- desactivo el boton aceptar del frame1 desde el inicio ... para que cuando se abra el Frame ya esté el boton desabilitado......esto lo ago en el contructor del frame asi....

public Inicio() {

setLocationRelativeTo(null);
initComponents();
jButtonAceptar_BD.setEnabled(false);

this.locate(800, 200);

}

2do----

ago el siguiente metodo despudes del contructor del Fram1 ..ASÍ

public void poner_visible_JButton(){
jButtonAceptar_BD.setEnabled(true);
}

esto es para cuando lo llame desde el otro frame se active el boton....


3ro----
LLamar el metodo en el Frame2 ASÍ----

Inicio in = new Inicio();
in.poner_visible_JButton();


este código lo pongo el el action performe del boton configurar BD .......con el objetivo que se active el boton despues que configuro la BAse de Datos......

ESPERO QUE ME HAYA EXPLICADO MEJOR QUE LA VEZ ANTEIOR......
TODA AYUDA ES BUENA.....
  #6 (permalink)  
Antiguo 10/02/2012, 15:32
 
Fecha de Ingreso: abril-2011
Mensajes: 1.342
Antigüedad: 13 años
Puntos: 344
Respuesta: como poner un botón invisible

El problema creo que está claro.

En el método que se ejecuta cuando presionas el botón estás creando una nueva instancia de la ventana, por lo que cuando llamás al método poner_visible_JButton estás haciendolo sobre una ventana distinta (que no aparece porque no has llamado al método setVisible, pero que está ahí).

Lo que tienes que hacer es pasarle la instancia de la ventana 1 a la instancia de la ventana 2 al crearla y luego usar esa instancia.

Ejemplo:

Clase VentanaPrincipal (hereda de JFrame)
Código Java:
Ver original
  1. public class VentanaPrincipal{
  2.  
  3. //Aquí creas la segunda ventana
  4. public void crearVentana2(){
  5.  
  6. //Como ves le pasas la referencia a la ventana actual
  7. VentanaSecundaria ventana2 = new VentanaSecundaria(this);
  8. }
  9. public void poner_visible_JButton(){
  10. jButtonAceptar_BD.setEnabled(true);
  11. }
  12.  
  13.  
  14. }

Clase VentanaSecundaria(hereda de JFrame)
Código Java:
Ver original
  1. public class VentanaSecundaria{
  2. private JFrame ventanaPadre;
  3.  
  4. public VentanaSecundaria(JFrame ventanaPadre){
  5. this.ventanaPadre = ventanaPadre;
  6. }
  7.  
  8. //Método que se ejecuta al pulsar el botón que tu quieras
  9. public void actionPerformed(....){
  10.  
  11. ventanaPadre.poner_visible_JButton();
  12. }
  13. }
  #7 (permalink)  
Antiguo 12/02/2012, 22:00
Avatar de gasoft  
Fecha de Ingreso: abril-2009
Mensajes: 68
Antigüedad: 15 años
Puntos: 3
Respuesta: como poner un botón invisible

Claro como dice nuestro amigo alexg88, debes pasarle al Panel 2 el JPanel 1 en el constructor para que puedas usar esos métodos y demás elementos de Panel1 en Panel2.
  #8 (permalink)  
Antiguo 14/02/2012, 08:59
 
Fecha de Ingreso: enero-2011
Ubicación: Cuba
Mensajes: 124
Antigüedad: 13 años, 3 meses
Puntos: 1
Respuesta: como poner un botón invisible

Gracias colegas es un privilegio poder contar con ustedes.... solo era cuestión de pasarle en el contructor del Frame2 una instancia del Frame1......

problema resuelto..
  #9 (permalink)  
Antiguo 25/10/2012, 19:30
 
Fecha de Ingreso: abril-2005
Mensajes: 22
Antigüedad: 19 años
Puntos: 0
Respuesta: como poner un botón invisible

iran 394 comentó:
solo era cuestión de pasarle en el contructor del Frame2 una instancia del Frame1......

problema resuelto..


.................................................. .................................................. .........................

Oye podrias exponer cual es la instancia que hay que hacer, por que estoy en el mismo problema que tu, y he hecho todo lo que has comentado aqui, podrias ayudarme

Etiquetas: invisible, netbeans
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 06:11.