Card Layout refresh nach Änderung

Roobiks

Mitglied
Hallo

Ich komme da selbst nicht mehr weiter, da mir einfach das Wissen fehlt:
Ich habe ein CardLayout mit einem JTree links und je nach dem welchen node man drückt rechts die entsprechende JTable aus einer separaten Klasse.
In einem anderen Fenster mache ich ein paar Änderungen, die Auswirkungen auf eines dieser JTable haben. Leider muss ich momentan das ganze Programm beenden und neu aufstarten, wenn ich die Änderungen in der JTable sehen möchte, was nicht optimal ist.
Gerne möchte ich während runtime die Änderungen im CardLayout sehen.

Ich habe es mal mit folgendem Code ausprobiert:
Java:
import java.io.IOException;
import java.net.URL;
import java.net.URLClassLoader;

public class ReloadMyClass
{
  public static void main(String[] args)
  throws ClassNotFoundException, IOException {
    Class<?> myClass=ReloadMyClass.class;
    System.out.printf("my class is Class@%x%n", myClass.hashCode());
    System.out.println("reloading");
    URL[] urls={ myClass.getProtectionDomain().getCodeSource().getLocation() };
    ClassLoader delegateParent = myClass.getClassLoader().getParent();
    try(URLClassLoader cl=new URLClassLoader(urls, delegateParent)) {
      Class<?> reloaded=cl.loadClass(myClass.getName());
      System.out.printf("reloaded my class: Class@%x%n", reloaded.hashCode());
      System.out.println("Different classes: "+(myClass!=reloaded));
    }
  }
}

Hat jedoch gar nichts gemacht.

Wer kann mir behiflich sein?
 
Was hast du dir denn von diesem Code erhofft ?
Für das CardLayout gibt es eine show-Methode. ich würde mal versuchen diese für die entsprechende JTable aufzurufen. (vorrausgesetzt die geänderten Daten stehen in deiner JTable auch richtig drin.) Ich habe auf diese Weise mal eine GUI gemacht die per Menü-Button zwischen mehreren Panels innerhalb eines JFrames der ein CardLayout hatte hin- und hergeschaltet hat.
 

Zurück
Oben