Look and Feel für einzelnde JFrames

wasteland

Mitglied
hallo zusammen,

ich hab in einer Anwendung mehrere JFrames.
Nun möchte ich für ein JFrame das LaF des Systems
setzten, bei den andern allerdings soll alles wie
gehabt bleiben. ist das möglich?
ich hab in dem Frame welches das System LaF
haben soll diese Zeile verwendet:
Java:
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
Nur hab ich das Gefühl das mit dieser Zeile das LaF meiner
gesamten Anwendung nun an das, des Systems angepasst wird.

Kann mir da jemand helfen?
 
Das Look&Feel gilt immer für die gesamte Anwendung (den Prozess). Dein Vorhaben geht also nur, wenn du deine einzelnen Frames als einzelne Anwendungen startest.
 
Hm.
Also ich hatte mal bei einer Anwendung ein Look&Feel (LaF)-Vorschaufensterchen gemacht, das wurde halt immer als neuer Java-Prozess gestartet. Etwa so:
Java:
LinkedList<String> params = new LinkedList<String>();
params.add("java");
params.add("-cp");
params.add( System.getProperty("java.class.path") );
params.add("my.LaF.ExampleWindow");
params.add( laf.getClass().getCanonicalName() );

ProcessBuilder starter = new ProcessBuilder();
starter.directory(new File( System.getProperty("user.dir") ));
starter.command(params);

Process process = starter.start();

Das macht genau das gleiche, als wenn du einen deiner Frames über Konsole startest. Wenn aber all deine Frames zu EINER Anwendung gehören, d.h. auch untereinender Daten austauschen, dann wirst du mit der Lösung Probleme haben.
 

Zurück
Oben