Cita:
Iniciado por djagu_26 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