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

Problemas con if y variable

Estas en el tema de Problemas con if y variable en el foro de Java en Foros del Web. Mi problema es que tengo una sentencia If en la cual tiene una condicion de un arbol de swing en la que si se selecciona ...
  #1 (permalink)  
Antiguo 24/06/2008, 17:20
 
Fecha de Ingreso: junio-2008
Mensajes: 10
Antigüedad: 15 años, 10 meses
Puntos: 0
Pregunta Problemas con if y variable

Mi problema es que tengo una sentencia If en la cual tiene una condicion de un arbol de swing
en la que si se selecciona el objeto o el nodo le da el valor a una variable,
pero esta se pierde cuando termina el if,
como le puedo hacer para que el valor que se le asigna a la variable no se pierda
y la pueda usar en toda la clase. Trate de usar return pero creo que lo e estado implementando mal.

Lo que queria hacer es cambiar un JLabel que tiene una imagen cada vez que escoge un nodo diferente,
para esto use la variable, por ejemplo Icon wo=new ImageIcon("imagenes/"+imagen+".PNG");, haciendo que se elimine la
imagen anterior y poniendo la nueva

Soy Novato, de antemano gracias
  #2 (permalink)  
Antiguo 24/06/2008, 17:32
Avatar de djagu_26  
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 518
Antigüedad: 16 años, 3 meses
Puntos: 6
Respuesta: Problemas con if y variable

Hola bienvenido! puedes poner el codigo entero donde dices que supuestamente se pierde el valor de la variable en el if asi podremos ayudarte mejor

Saludos
__________________
"La magia no existe, la programacion si"

A/P Agustin Sivoplas
[email protected]
  #3 (permalink)  
Antiguo 26/06/2008, 10:18
 
Fecha de Ingreso: junio-2008
Mensajes: 10
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Problemas con if y variable

Cita:
Iniciado por djagu_26 Ver Mensaje
Hola bienvenido! puedes poner el codigo entero donde dices que supuestamente se pierde el valor de la variable en el if asi podremos ayudarte mejor

Saludos
Código:
//Importacion de paqueteria
import java.io.*;
import java.lang.*;
import javax.swing.*;
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.tree.*;
import javax.swing.BorderFactory;
import javax.swing.border.Border;
import javax.swing.border.TitledBorder;
import javax.swing.event.TreeSelectionEvent;
import javax.swing.event.TreeSelectionListener;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.DefaultTreeModel;
import javax.swing.tree.DefaultTreeSelectionModel;
import javax.swing.tree.TreePath;

public class Inicio extends JFrame
{
private int     img=0,v,h;
private DefaultMutableTreeNode TPadre;
private JTree JTFamilia;
private Icon ImFamilia;
private    DefaultMutableTreeNode Madre,Hijos,Hijo1,Hijo2;
private JScrollPane JSPFamilia;
                
    public static void main(String args[])
    {
        try
        {
            //Look And Feel
            UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());
                
            //Abrir ventana
            new Inicio();            
            
        } catch(Exception e)    
            {
                //Error Try
                System.out.println("No se pudo crear la ventana");    
            }
    }
    
    Inicio()
    {
    //................................................
    //JScrollPane
        v = ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED;
        h = ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED;    
        JSPFamilia = new JScrollPane(JTFamilia,v,h);
    //Iniciar Arboles
        TPadre = new DefaultMutableTreeNode("Padre");
        JTFamilia = new JTree(TPadre);
            JTFamilia.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);
            //Creando Series 2002
        Madre = new DefaultMutableTreeNode("Madre");
        Hijos = new DefaultMutableTreeNode("Madre");
        Hijo1 = new DefaultMutableTreeNode("Hijo2");
        Hijo2 = new DefaultMutableTreeNode("Hijo3");
        
        TPadre.add(Madre);
            Madre.add(Hijos);
                Hijos.add(Hijo1);
                Hijos.add(Hijo2);
                
        //Imagen        
        ImFamilia = new ImageIcon("Images/2002/0/"+img+".PNG");
        JLFamilia = new JLabel("",ImFamilia,SwingConstants.CENTER);    
        JPFamilia.add(JLFamilia, BorderLayout.CENTER);
        
        /*ESTOS COMPONENTES SE PONEN EN UN BORDER LAYOUT DE MODO DE QUE LA IMAGEN QUEDE A LA DERECHA
        Y EL ARBOL A LA IZQUIERDA*/
        
        //Evento si es seleccionado el nodo
        JTFamilia.getSelectionModel().addTreeSelectionListener(new TreeSelectionListener()
            {
                public void valueChanged(TreeSelectionEvent e)
                {
                    DefaultMutableTreeNode NSelect = (DefaultMutableTreeNode)JTFamilia.getLastSelectedPathComponent();
                    if(NSelect == null || NSelect.isRoot())
                        return;
                    if(NSelect == LOB001)
                    {    
                    img=1;
                    
                }
            });
    }
}

Es en el if donde se pierde el cambio de imagen.. como le hago para que de vuelva el valor a
la variable principal o para que haga el cambio dentro del if

PS: Gracias por la bienvenida
  #4 (permalink)  
Antiguo 26/06/2008, 11:02
Avatar de djagu_26  
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 518
Antigüedad: 16 años, 3 meses
Puntos: 6
Respuesta: Problemas con if y variable

Hola mira me quedo una duda ese metodo no devuelve nada porq haces un return; eso yo lo sacaria, esta variable LOB001 no se q es? y para setear la imagen lo haces asi

lblImagen.setIcon(new ImageIcon(getClass().getResource("/fondo.jpg")));

saludos
__________________
"La magia no existe, la programacion si"

A/P Agustin Sivoplas
[email protected]
  #5 (permalink)  
Antiguo 26/06/2008, 11:53
 
Fecha de Ingreso: junio-2008
Mensajes: 10
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Problemas con if y variable

lo de LOB001 no es nada,me equivoque es Hijo1, que es cuando seleccionada el nodo Hijo1..
y ya le quite lo de el if con el return... pero no me sigue cambiando la imagen... tambien ya le puse como tu habias dicho

JLFamilia.setIcon(new ImageIcon(getClass().getResource("Images/2002/LOB/"+img+".PNG"))); y nada, se pierde-.-
  #6 (permalink)  
Antiguo 26/06/2008, 13:54
Avatar de djagu_26  
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 518
Antigüedad: 16 años, 3 meses
Puntos: 6
Respuesta: Problemas con if y variable

hola te falta una / antees de Images seria asi

JLFamilia.setIcon(new ImageIcon(getClass().getResource("/Images/2002/LOB/"+img+".PNG")));

saludos
__________________
"La magia no existe, la programacion si"

A/P Agustin Sivoplas
[email protected]
  #7 (permalink)  
Antiguo 26/06/2008, 14:41
 
Fecha de Ingreso: junio-2008
Mensajes: 10
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Problemas con if y variable

Si ya le cambie... :p..

Y ya me salio pero tuve que poner la direccion total dentro del if y no cambiando la variable
gracias!!!

saludos

Última edición por odrargg; 26/06/2008 a las 14:47
  #8 (permalink)  
Antiguo 26/06/2008, 15:31
Avatar de djagu_26  
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 518
Antigüedad: 16 años, 3 meses
Puntos: 6
Respuesta: Problemas con if y variable

ok saludos y cuidate cualquier cosa a las ordenes y msn esta publico
__________________
"La magia no existe, la programacion si"

A/P Agustin Sivoplas
[email protected]
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 10:27.