J'ai une application Java qui affiche deux JFrames sur deux moniteurs distincts. Sur Ubuntu et Windows, l'application s'affiche très bien. Je peux configurer les JFrames à afficher sur les moniteurs avec l'ID d'écran spécifié. Cependant, sur openSUSE, il reste affiché sur le même moniteur, quel que soit le réglage. Qu'est-ce qui est différent d'openSUSE?OpenSuse 12.3 + Java double affichage
Voici une partie du code que j'utilise pour déterminer sur quel moniteur JFrame doit afficher:
GraphicsDevice[] screens = GraphicsEnvironment.getLocalGraphicsEnvironment().getScreenDevices();
for (int s = 0; s < screens.length; s++) {
GraphicsConfiguration configuration = null;
for (int c = 0; c < screens[s].getConfigurations().length; c++) {
if (AWTUtilities.isTranslucencyCapable(screens[s].getConfigurations()[c])) {
configuration = screens[s].getConfigurations()[c];
break;
}
}
if (configuration == null) {
configuration = screens[s].getDefaultConfiguration();
}
if (screens[s].getIDstring().equals[frame1_id]) {
frame1 = new JFrame("Frame 1", configuration);
frame1.setResizable(false);
frame1.setUndecorated(true);
frame1.setBounds(configuration.getBounds());
frame1.setVisible(true);
}
if (screens[s].getIDstring().equals[frame2_id]) {
frame2 = new JFrame("Frame 2", configuration);
frame2.setResizable(false);
frame2.setUndecorated(true);
frame2.setBounds(configuration.getBounds());
frame2.setVisible(true);
}
}
Avez-vous essayé un autre gestionnaire de fenêtres? – trashgod
Cela a fonctionné pour moi, merci beaucoup. Veuillez ajouter votre commentaire en guise de réponse pour que je puisse voter. – bouncer
Heureux que cela a aidé. Si vous avez des détails sur ce qui fonctionne le mieux, je vais les incorporer dans la réponse. Vous pouvez également [répondre à votre propre question] (http://meta.stackexchange.com/q/17463/163188). – trashgod