<?xml version="1.0" encoding="ISO-8859-1"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		<title>Forum du club des développeurs et IT Pro - AWT/Swing</title>
		<link>https://www.developpez.net/forums/</link>
		<description><![CDATA[Forum d'entraide pour la création d'interfaces graphiques en Swing et AWT. Avant de poster -> FAQ Java GUI]]></description>
		<language>fr</language>
		<lastBuildDate>Sat, 10 Oct 2026 16:24:50 GMT</lastBuildDate>
		<generator>vBulletin</generator>
		<ttl>15</ttl>
		<image>
			<url>https://forum.developpez.be/images/misc/rss.png</url>
			<title>Forum du club des développeurs et IT Pro - AWT/Swing</title>
			<link>https://www.developpez.net/forums/</link>
		</image>
		<item>
			<title>Créer un JPanel scrollable</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2185957&amp;goto=newpost</link>
			<pubDate>Fri, 02 Oct 2026 09:10:12 GMT</pubDate>
			<description>Hello 
Nouveau problème 
...</description>
			<content:encoded><![CDATA[<div>Hello<br />
Nouveau problème<br />
<br />
Les deux images qui suivent montrent les deux aspect que doit avoir la fenêtre de mon projet<br />
<br />
<img src="https://www.developpez.net/forums/attachments/p679155d1790930157/java/interfaces-graphiques-java/awt-swing/creer-jpanel-scrollable/winscroll-5.png/" border="0" alt="Nom : Winscroll-5.png
Affichages : 70
Taille : 22,9 Ko"  style="float: CONFIG" /><br />
<img src="https://www.developpez.net/forums/attachments/p679156d1790930243/java/interfaces-graphiques-java/awt-swing/creer-jpanel-scrollable/winscroll-6.png/" border="0" alt="Nom : Winscroll-6.png
Affichages : 69
Taille : 31,2 Ko"  style="float: CONFIG" /><br />
<br />
Explication des zones<br />
    1. Titre de la fenêtre<br />
    2. Barre des menus<br />
    3. Zone contenant les fenêtres theWinLayout et theWinGallery, nommée internalDisplayArea, une instance de la classe JPanel<br />
    4. Barre d'état<br />
    5. Ascenseur vertical<br />
    6. Ascenseur horizontal<br />
    7. Zone pour les barre des boutons pour la gestion du contour, du réseau, des signaux, du décor<br />
    8. Zone d'affichage des paramètres d'un élément du réseau sélectionné<br />
<br />
Les composants 4, 7 et 8 sont des JPanel ajoutés à mainDisplayArea<br />
    • Composant 4: stateDisplayArea<br />
    • Composant 7: un seul est visible à un moment donné<br />
        &#9702; contourButtonsDisplayArea: zone des boutons pour la gestion du contour du réseau<br />
        &#9702; layoutButtonsDisplayArea: zone des boutons pour la gestion du réseau<br />
        &#9702; signalsButtonsDisplayArea: zone des boutons pour la gestion des signaux<br />
        &#9702; scenaryButtonsDisplayArea: zone des boutons pour la gestion du décor<br />
        &#9702; submoduleButtonsDisplayArea: zone des boutons pour la gestion des sous-modules<br />
    • Composant 8: parametersDeviceDisplayArea<br />
<br />
Une instance JPanel nommée mainDisplayArea contient les zones 3, 4, 7 et 8<br />
<br />
On a la hiérarchie suivante :<br />
<br />
<img src="https://www.developpez.net/forums/attachments/p679157d1790930625/java/interfaces-graphiques-java/awt-swing/creer-jpanel-scrollable/winscroll-7.png/" border="0" alt="Nom : Winscroll-7.png
Affichages : 70
Taille : 29,2 Ko"  style="float: CONFIG" /><br />
<br />
    • theWinMain: JFrame, fenêtre principale<br />
    • mainDisplayArea: JFrame, zone d'affichage de tous les composants qui s'affiche dans theWinMain<br />
    • scrollPane: JScrollPane, pour rendre scrollable internalDisplayArea<br />
    • stateDisplayArea, contourDisplayArea, ...: JPanel<br />
    • internalDisplayArea: JPanel, contient les fenêtres internes theWinLayout et theWinGallery<br />
    • theWinLayout, theWinGallery: WinInternal extends JinternalFrame<br />
<br />
Pour le moment je veux juste rendre inernalDisplayArea scrollable<br />
<br />
Le code<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="40"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br />55<br />56<br />57<br />58<br />59<br />60<br />61<br />62<br />63<br />64<br />65<br />66<br />67<br />68<br />69<br />70<br />71<br />72<br />73<br />74<br />75<br />76<br />77<br />78<br />79<br />80<br />81<br />82<br />83<br />84<br />85<br />86<br />87<br />88<br />89<br />90<br />91<br />92<br />93<br />94<br />95<br />96<br />97<br />98<br />99<br />100<br />101<br />102<br />103<br />104<br />105<br />106<br />107<br />108<br />109<br />110<br />111<br />112<br />113<br />114<br />115<br />116<br />117<br />118<br />119<br />120<br />121<br />122<br />123<br />124<br /></div></td><td valign="top"><pre style="margin: 0">// Classe de la fenêtre principale
public class CdmWin extends JFrame{
	// Pour éviter un warning
	private static final long serialVersionUID = -6677562836791922873L;
	
	// La fenêtre principale
	public static CdmWin theWinMain = null;
	// La fenêtre du réseau
	public static CdmWin.WinInternal theWinLayout = null;
	// La fenêtre de la gallerie des trains
	public static CdmWin.WinInternal theWinGallery = null;

	// Zone d'affichage des fenêtres internes
	private JDesktopPane mainDesktop = new JDesktopPane();
	
	private static byte winNum = 0;
	
	// Constructeur
	// ptitle : titre de la fenêtre
	public CdmWin(String ptitle) {
		
		// Zone d'affichage de la fenêtre
		Rectangle screenBounds = Global.SCREEN_PRIMARY_BOUNDS;
		
		theWinMain = this;

		// On place la fenêtre sur le bon écran
		this.setBounds(screenBounds.x, screenBounds.y, screenBounds.width, screenBounds.height);
		
		Global.cdmMainWin = this.getBounds();
		
		// Son titre
		this.setTitle(ptitle);
		
		// Quitte l'application quand on clique sur le bouton de fermeture de la fenêtre
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		
		// Pour que la fenêtre reste toujours au premier plan
		this.setAlwaysOnTop(true);
		
		// Zone d'affichage des éléments ajoutés à la fenêtre
		JPanel mainDisplayArea = (JPanel)this.getContentPane();
		
<font color="#FF8C00">JPanel internalDisplayArea= new JPanel();</font>
		
		// Couleur de fond de la zone Desktop
		mainDesktop.setBackground(Global.mainBackgroundColor);
		
		// Indique que c'est la zone de la fenêtre
		this.setContentPane(mainDisplayArea);
		
		// Zone pour les fenêtres internes
<font color="#FF0000">//		mainDisplayArea.add(mainDesktop, BorderLayout.CENTER);</font>

<font color="#FF8C00">internalDisplayArea.add(mainDesktop, BorderLayout.CENTER);

JScrollPane scrollPane = new JScrollPane(internalDisplayArea, ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);
mainDisplayArea.add(scrollPane);</font>
		
		// Création de la fenêtre du réseau
		// Pas visible lors de la création de la fenêtre
		mainDesktop.add(theWinLayout = new WinInternal(Global.whichLanguage == Menu.MENU_OPTIONS_LANGUE_FRENCH ? &quot;Le réseau&quot; : &quot;The Layout&quot;));
		
		// Création de la fenêtre de la galerie des trains
		// Pas visible lors de la création de la fenêtre
		mainDesktop.add(theWinGallery = new WinInternal(Global.whichLanguage == Menu.MENU_OPTIONS_LANGUE_FRENCH ? &quot;La Galerie de trains&quot; : &quot;The Train Gallery&quot;));	
		
		// Création du panneau contenant les boutons icnones pour la création et la gestion du contour du réseau
//		BarButtons theLayoutContour = new BarButtons();
		
		// Affiche le menu 
		Menu.CreateMenus(this);
		// Maj de l'état de tous les menus
		
		// Affiche la fenêtre
		this.setVisible(true);		
	}
	
	// Classe des fenêtres du réseau et de la gallerie des trains
	public class WinInternal extends JInternalFrame {
		// Pour éviter un warning
		private static final long serialVersionUID = 4993363235763093908L;

		// Classe pour la zone d'affichage des composant de la fenêtre interne
		public class DisplayArea extends JPanel {
			// Pour éviter un warning
			private static final long serialVersionUID = -5609983333478303182L;

			// Cette fonction est appelée à chaque interraction de l'utilisateur sur la fenêtre
			public void paintComponent(Graphics g) {
				g.setColor(Color.white);
				g.fillOval(20, 20, 75, 75);
			}			
		}
		
		// Constructeur
		public WinInternal(String ptitle) {
			
			// Titre de la fenêtre
			// Les quatres true indiquent dans l'ordre
			// On peut la redimensionner
			// On peut la ferner
			// On peut la maximiser
			// On peut la minimiser (icone)
			super(ptitle, true, true, true, true);
			
			// Met à la taille par défaut
			this.setSize(Global.cdmMainWin.width - 40, Global.cdmMainWin.height - 120);
			
			// Positionne les fenêtre en les décalant
			winNum++; 
			this.setLocation(winNum * 10, winNum * 10);
			
			// Zone d'affichage des composants ajoutés à la fenêtre
			DisplayArea theDisplayArea = new DisplayArea();
			
			// Couleur de fond de la zone d(affichage
			theDisplayArea.setBackground(Global.internalBackgroundColor);
			
			// Indique que c'est la zone d(affichage de la fenêtre
			this.setContentPane(theDisplayArea);
			
		}
	}</pre></td></tr></table></code><hr />
</div>Avec le code en orange et sans le code en rouge cela ne fonctionne pas <br />
J'obtiens cet affichage<br />
<img src="https://www.developpez.net/forums/attachments/p679159d1790931626/java/interfaces-graphiques-java/awt-swing/creer-jpanel-scrollable/winscroll-8.png/" border="0" alt="Nom : Winscroll-8.png
Affichages : 69
Taille : 56,0 Ko"  style="float: CONFIG" /><br />
<br />
Le code en rouge sans le code en orange me permet d'avoir ceci comme affichage<br />
<img src="https://www.developpez.net/forums/attachments/p679160d1790931675/java/interfaces-graphiques-java/awt-swing/creer-jpanel-scrollable/winscroll-9.png/" border="0" alt="Nom : Winscroll-9.png
Affichages : 102
Taille : 82,6 Ko"  style="float: CONFIG" /><br />
<br />
Merci pour l'aide<br />
Louis</div>


	<div style="padding:10px">

	

	
		<fieldset class="fieldset">
			<legend>Images attachées</legend>
				<div style="padding:10px">
				<img class="attach" src="https://www.developpez.net/forums/attachments/p679155d1790930157/java/interfaces-graphiques-java/awt-swing/creer-jpanel-scrollable/winscroll-5.png/" alt="" />&nbsp;<img class="attach" src="https://www.developpez.net/forums/attachments/p679156d1790930243/java/interfaces-graphiques-java/awt-swing/creer-jpanel-scrollable/winscroll-6.png/" alt="" />&nbsp;<img class="attach" src="https://www.developpez.net/forums/attachments/p679157d1790930625/java/interfaces-graphiques-java/awt-swing/creer-jpanel-scrollable/winscroll-7.png/" alt="" />&nbsp;<img class="attach" src="https://www.developpez.net/forums/attachments/p679159d1790931626/java/interfaces-graphiques-java/awt-swing/creer-jpanel-scrollable/winscroll-8.png/" alt="" />&nbsp;<img class="attach" src="https://www.developpez.net/forums/attachments/p679160d1790931675/java/interfaces-graphiques-java/awt-swing/creer-jpanel-scrollable/winscroll-9.png/" alt="" />&nbsp;
			</div>
		</fieldset>
	

	

	

	</div>
]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f200/java/interfaces-graphiques-java/awt-swing/">AWT/Swing</category>
			<dc:creator>sonata32</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2185957/java/interfaces-graphiques-java/awt-swing/creer-jpanel-scrollable/</guid>
		</item>
		<item>
			<title>JInternalFrame plein écran</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2185883&amp;goto=newpost</link>
			<pubDate>Mon, 28 Sep 2026 09:47:02 GMT</pubDate>
			<description>Hello 
 
Les captures sont...</description>
			<content:encoded><![CDATA[<div>Hello<br />
<br />
Les captures sont pour pour montrer ce que je voudrais obtenir<br />
<br />
J'ai une fenêtre JInternalFrame dans une JFrame comme ceci<br />
<img src="https://www.developpez.net/forums/attachments/p679055d1790588599/java/interfaces-graphiques-java/awt-swing/jinternalframe-plein-ecran/java-win-1.png/" border="0" alt="Nom : Java-Win-1.png
Affichages : 94
Taille : 64,6 Ko"  style="float: CONFIG" /><br />
<br />
Quand je clique sur le bouton pour maximiser la fenêtre &quot;Le Réseau&quot; j'aimerai obtenir ceci<br />
<img src="https://www.developpez.net/forums/attachments/p679056d1790588714/java/interfaces-graphiques-java/awt-swing/jinternalframe-plein-ecran/java-win-2.png/" border="0" alt="Nom : Java-Win-2.png
Affichages : 123
Taille : 56,3 Ko"  style="float: CONFIG" /><br />
<br />
Merci pour l'aide<br />
<br />
Louis</div>


	<div style="padding:10px">

	

	
		<fieldset class="fieldset">
			<legend>Images attachées</legend>
				<div style="padding:10px">
				<img class="attach" src="https://www.developpez.net/forums/attachments/p679055d1790588599/java/interfaces-graphiques-java/awt-swing/jinternalframe-plein-ecran/java-win-1.png/" alt="" />&nbsp;<img class="attach" src="https://www.developpez.net/forums/attachments/p679056d1790588714/java/interfaces-graphiques-java/awt-swing/jinternalframe-plein-ecran/java-win-2.png/" alt="" />&nbsp;
			</div>
		</fieldset>
	

	

	

	</div>
]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f200/java/interfaces-graphiques-java/awt-swing/">AWT/Swing</category>
			<dc:creator>sonata32</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2185883/java/interfaces-graphiques-java/awt-swing/jinternalframe-plein-ecran/</guid>
		</item>
		<item>
			<title>Restreindre les déplacements de JDialog</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2185978&amp;goto=newpost</link>
			<pubDate>Fri, 25 Sep 2026 08:55:50 GMT</pubDate>
			<description>Hello 
 
Comment forcer une...</description>
			<content:encoded><![CDATA[<div>Hello<br />
<br />
Comment forcer une fenêtre JDialog avec comme parent une fenêtre JFrame à ne pas sortir de la fenêtre parent ?<br />
Merci pour l'aide<br />
Louis</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f200/java/interfaces-graphiques-java/awt-swing/">AWT/Swing</category>
			<dc:creator>sonata32</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2185978/java/interfaces-graphiques-java/awt-swing/restreindre-deplacements-jdialog/</guid>
		</item>
		<item>
			<title>Utilisation de getMenuBar()</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2185580&amp;goto=newpost</link>
			<pubDate>Thu, 10 Sep 2026 08:58:00 GMT</pubDate>
			<description><![CDATA[<div...]]></description>
			<content:encoded><![CDATA[<div><div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br /></div></td><td valign="top"><pre style="margin: 0">		pframe.setJMenuBar<span class="br0">&#40;</span>pmenuBar<span class="br0">&#41;</span>;
System.out.print<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;MenuBar = &quot;</span><span class="br0">&#41;</span>;
System.out.println<span class="br0">&#40;</span>pframe.getMenuBar<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;</pre></td></tr></table></code><hr />
</div>Il affiche dans la console : MenuBar = null<br />
<br />
Merci pour l'aide<br />
Louis</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f200/java/interfaces-graphiques-java/awt-swing/">AWT/Swing</category>
			<dc:creator>sonata32</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2185580/java/interfaces-graphiques-java/awt-swing/utilisation-getmenubar/</guid>
		</item>
		<item>
			<title>ActionListener non actif</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2185558&amp;goto=newpost</link>
			<pubDate>Wed, 09 Sep 2026 09:25:29 GMT</pubDate>
			<description><![CDATA[Hello 
 J'ai ce code 
<div...]]></description>
			<content:encoded><![CDATA[<div>Hello<br />
 J'ai ce code<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
							JMenuItem theMenuItem = <span style="color: #0000ff;">new</span> JMenuItem<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;English&quot;</span><span class="br0">&#41;</span>;
							theMenu.add<span class="br0">&#40;</span>theMenuItem<span class="br0">&#41;</span>;
							<span style="color: #808080;">// D&eacute;finit l'action &agrave; effectuer</span>
							theMenuItem.addActionListener<span class="br0">&#40;</span><span style="color: #0000ff;">new</span> ActionListener<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
								<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span> actionPerformed<span class="br0">&#40;</span>ActionEvent event<span class="br0">&#41;</span> <span class="br0">&#123;</span>
									Event.GoActionFromMenuItem<span class="br0">&#40;</span>MENU_OPTIONS_LANGUE_ENGLISH<span class="br0">&#41;</span>;								
								<span class="br0">&#125;</span>
							<span class="br0">&#125;</span><span class="br0">&#41;</span>;</pre></td></tr></table></code><hr />
</div>Quand le clique sur le menu correspondant aucune action ne se produit<br />
J'ai fait un println() à l'intérieur de la méthode mais rien ne s'affiche sur la Console<br />
Merci pour l'aide<br />
Louis</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f200/java/interfaces-graphiques-java/awt-swing/">AWT/Swing</category>
			<dc:creator>sonata32</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2185558/java/interfaces-graphiques-java/awt-swing/actionlistener-non-actif/</guid>
		</item>
		<item>
			<title>Gérer deux moniteurs, cela ne marche pas</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2185488&amp;goto=newpost</link>
			<pubDate>Sat, 05 Sep 2026 12:50:34 GMT</pubDate>
			<description><![CDATA[Bonjour 
J'essaye de mettre...]]></description>
			<content:encoded><![CDATA[<div>Bonjour<br />
J'essaye de mettre en place la gestion de deux moniteurs<br />
Voici le code utilisé<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
<span style="color: #0000ff;">import</span> java.awt.GraphicsConfiguration;
<span style="color: #0000ff;">import</span> java.awt.GraphicsDevice;
<span style="color: #0000ff;">import</span> java.awt.GraphicsEnvironment;
<span style="color: #0000ff;">import</span> java.awt.Toolkit;
&nbsp;
<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">interface</span> GlobalVar <span class="br0">&#123;</span>
	<span style="color: #808080;">// Version de CDM-Rail</span>
	<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">final</span> <span style="color: #0000ff;">static</span> String CDM_VERSION = <span style="color: #FF0000;">&quot;V26&quot;</span>;
&nbsp;
	<span style="color: #808080;">// Liste des &eacute;crans disponibles</span>
	<span style="color: #808080;">// On ne tient compte que de deux &eacute;crans au maximum</span>
	<span style="color: #0000ff;">static</span> GraphicsEnvironment gEnv = GraphicsEnvironment.getLocalGraphicsEnvironment<span class="br0">&#40;</span><span class="br0">&#41;</span>;
	<span style="color: #0000ff;">static</span> GraphicsDevice<span class="br0">&#91;</span><span class="br0">&#93;</span> gDevices = gEnv.getScreenDevices<span class="br0">&#40;</span><span class="br0">&#41;</span>;
	<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">final</span> <span style="color: #0000ff;">static</span> GraphicsDevice SCREEN_PRIMARY = gDevices<span class="br0">&#91;</span><span style="color: #cc66cc;">0</span><span class="br0">&#93;</span>;
	<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">final</span> <span style="color: #0000ff;">static</span> GraphicsDevice SCREEN_SECONDARY = gDevices.length &gt; <span style="color: #cc66cc;">1</span> ? gDevices<span class="br0">&#91;</span><span style="color: #cc66cc;">1</span><span class="br0">&#93;</span> : gDevices<span class="br0">&#91;</span><span style="color: #cc66cc;">0</span><span class="br0">&#93;</span>;
	<span style="color: #808080;">// Les deux confighurations graphiques</span>
	<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">final</span> <span style="color: #0000ff;">static</span> GraphicsConfiguration SCREEN_PRIMARY_CONF = SCREEN_PRIMARY.getDefaultConfiguration<span class="br0">&#40;</span><span class="br0">&#41;</span>;
	<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">final</span> <span style="color: #0000ff;">static</span> GraphicsConfiguration SCREEN_SECONDARY_CONF = SCREEN_SECONDARY.getDefaultConfiguration<span class="br0">&#40;</span><span class="br0">&#41;</span>;
	<span style="color: #808080;">// Pour utiliser le second &eacute;cran</span>
	<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">static</span> <span style="color: #0000ff;">boolean</span> useScreenSecondary = <span style="color: #0000ff;">false</span>;
	<span style="color: #808080;">// Taille de l'&eacute;cran principal</span>
	<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">final</span> <span style="color: #0000ff;">static</span> <span style="color: #0000ff;">int</span> SCREEN_PRIMARY_WIDTH = Toolkit.getDefaultToolkit<span class="br0">&#40;</span><span class="br0">&#41;</span>.getScreenSize<span class="br0">&#40;</span><span class="br0">&#41;</span>.width;
	<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">final</span> <span style="color: #0000ff;">static</span> <span style="color: #0000ff;">int</span> SCREEN_PRIMARY_HEIGHT = Toolkit.getDefaultToolkit<span class="br0">&#40;</span><span class="br0">&#41;</span>.getScreenSize<span class="br0">&#40;</span><span class="br0">&#41;</span>.height;
	<span style="color: #808080;">// Taille de l'&eacute;cran secondaire</span>
	<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">final</span> <span style="color: #0000ff;">static</span> <span style="color: #0000ff;">int</span> SCREEN_SECONDARY_WIDTH = Toolkit.getDefaultToolkit<span class="br0">&#40;</span><span class="br0">&#41;</span>.getScreenSize<span class="br0">&#40;</span><span class="br0">&#41;</span>.width;
	<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">final</span> <span style="color: #0000ff;">static</span> <span style="color: #0000ff;">int</span> SCREEN_SECONDARY_HEIGHT = Toolkit.getDefaultToolkit<span class="br0">&#40;</span><span class="br0">&#41;</span>.getScreenSize<span class="br0">&#40;</span><span class="br0">&#41;</span>.height;
&nbsp;
	<span style="color: #808080;">/*</span>
<span style="color: #808080;">	 * Les types de fen&ecirc;tres utilis&eacute;es</span>
<span style="color: #808080;">	 */</span>
	<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">final</span> <span style="color: #0000ff;">static</span> String WIN_MAIN = <span style="color: #FF0000;">&quot;MAIN&quot;</span>; <span style="color: #808080;">// Fen&ecirc;tre principale</span>
<span class="br0">&#125;</span></pre></td></tr></table></code><hr />
</div><div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
<span style="color: #0000ff;">import</span> javax.swing.*;
&nbsp;
<span style="color: #808080;">// Dans cette classe on trouve la cr&eacute;ation de toutes les fen&ecirc;tres</span>
<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span> CdmWin <span style="color: #0000ff;">implements</span> GlobalVar<span class="br0">&#123;</span>
	<span style="color: #808080;">// Instances des fen&ecirc;tres</span>
	CdmWinMain winMain; <span style="color: #808080;">// Fen&ecirc;tre principale de CDM-Rail</span>
&nbsp;
	<span style="color: #808080;">// Constructeur</span>
	CdmWin <span class="br0">&#40;</span>String winType<span class="br0">&#41;</span> <span class="br0">&#123;</span>
		<span style="color: #808080; font-weight: bold;">/**</span>
<span style="color: #808080; font-weight: bold;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;* <span style="color: #0000ff;">@param</span><span style="color: #800000;"> winType</span></span>
<span style="color: #808080; font-weight: bold;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;*/</span>
		<span style="color: #0000ff;">switch</span> <span class="br0">&#40;</span>winType<span class="br0">&#41;</span> <span class="br0">&#123;</span>
			<span style="color: #0000ff;">case</span> WIN_MAIN :
				winMain = <span style="color: #0000ff;">new</span> CdmWinMain<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;CDM-Rail - &quot;</span> + CDM_VERSION<span class="br0">&#41;</span>;
				<span style="color: #0000ff;">break</span>;
		<span class="br0">&#125;</span>
	<span class="br0">&#125;</span>
&nbsp;
	<span style="color: #808080;">/*</span>
<span style="color: #808080;">	 * Classe de la fen&ecirc;tre principale de CDM-Rail</span>
<span style="color: #808080;">	 */</span>
&nbsp;
	<span style="color: #0000ff;">class</span> CdmWinMain <span style="color: #0000ff;">extends</span> JFrame<span class="br0">&#123;</span>
&nbsp;
		<span style="color: #808080;">// Constructeur</span>
		CdmWinMain<span class="br0">&#40;</span>String ptitle<span class="br0">&#41;</span><span class="br0">&#123;</span>
			<span style="color: #808080; font-weight: bold;">/**</span>
<span style="color: #808080; font-weight: bold;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;* <span style="color: #0000ff;">@param</span><span style="color: #800000;"> ptitle</span></span>
<span style="color: #808080; font-weight: bold;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;*/</span>
&nbsp;
			<span style="color: #808080;">// Cr&eacute;ation de la fen&ecirc;tre sur l'&eacute;cran principal</span>
			<span style="color: #0000ff;">super</span><span class="br0">&#40;</span>SCREEN_SECONDARY_CONF<span class="br0">&#41;</span>;
			<span style="color: #808080;">// Son titre</span>
			<span style="color: #0000ff;">this</span>.setTitle<span class="br0">&#40;</span>ptitle<span class="br0">&#41;</span>;
			<span style="color: #808080;">//  Dimensions de la fen&ecirc;tre</span>
			<span style="color: #0000ff;">this</span>.setSize<span class="br0">&#40;</span>SCREEN_SECONDARY_WIDTH, SCREEN_SECONDARY_HEIGHT<span class="br0">&#41;</span>;
			<span style="color: #808080;">// Positionne la fen^tre au centre de l'&eacute;cran</span>
			<span style="color: #0000ff;">this</span>.setLocationRelativeTo<span class="br0">&#40;</span><span style="color: #0000ff;">null</span><span class="br0">&#41;</span>;
			<span style="color: #808080;">// Quitte l'application quand on clique sur le bouton de fermeture de la fen&ecirc;tre</span>
			<span style="color: #0000ff;">this</span>.setDefaultCloseOperation<span class="br0">&#40;</span>JFrame.EXIT_ON_CLOSE<span class="br0">&#41;</span>;
			<span style="color: #0000ff;">this</span>.setVisible<span class="br0">&#40;</span><span style="color: #0000ff;">true</span><span class="br0">&#41;</span>;
		<span class="br0">&#125;</span>
	<span class="br0">&#125;</span>
&nbsp;
<span class="br0">&#125;</span></pre></td></tr></table></code><hr />
</div><div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
<span style="color: #808080;">/*</span>
<span style="color: #808080;">&nbsp;* Classe principale</span>
<span style="color: #808080;">&nbsp;* </span>
<span style="color: #808080;">&nbsp;*/</span>
<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span> CdmMain <span style="color: #0000ff;">implements</span> GlobalVar <span class="br0">&#123;</span>
&nbsp;
	<span style="color: #808080; font-weight: bold;">/**</span>
<span style="color: #808080; font-weight: bold;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;* </span>
<span style="color: #808080; font-weight: bold;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;* <span style="color: #0000ff;">@param</span><span style="color: #800000;"> args</span></span>
<span style="color: #808080; font-weight: bold;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;*/</span>
&nbsp;
	<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">static</span> <span style="color: #0000ff;">void</span> main<span class="br0">&#40;</span>String<span class="br0">&#91;</span><span class="br0">&#93;</span> args<span class="br0">&#41;</span> <span class="br0">&#123;</span>
		<span style="color: #808080; font-weight: bold;">/**</span>
<span style="color: #808080; font-weight: bold;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;* Cr&eacute;ation de la fen&ecirc;tre principale de CDM-Rail</span>
<span style="color: #808080; font-weight: bold;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;*/</span>
		CdmWin winMain = <span style="color: #0000ff;">new</span> CdmWin<span class="br0">&#40;</span>GlobalVar.WIN_MAIN<span class="br0">&#41;</span>;
     <span class="br0">&#125;</span>	
<span class="br0">&#125;</span></pre></td></tr></table></code><hr />
</div>Je travaille avec Eclipse, le code s'exécute sans erreurs<br />
Mais la fenêtre s'affiche sur le premier écran<br />
J'ai affiché le nombre d'écran avec gDevices.length, il affiche bien 2<br />
Je suis sur MacOS<br />
Merci pour votre aide<br />
Louis</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f200/java/interfaces-graphiques-java/awt-swing/">AWT/Swing</category>
			<dc:creator>sonata32</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2185488/java/interfaces-graphiques-java/awt-swing/gerer-moniteurs-ne-marche/</guid>
		</item>
	</channel>
</rss>
