J'ai une classe qui étend javax.swing.jframe construite avec NetBeans GUI Editor. Y a-t-il un moyen de faire cette jframe Cascade lorsque plusieurs d'entre elles étant ouvertes? P>
3 Réponses :
Il suffit de conserver une variable avec l'emplacement précédent jframe code> et pour le prochain effectuez:
getLocation () code> vous retournera l'emplacement à l'écran d'un
jframe code>. p> p>
OP peut avoir signifié plusieurs instances de l'application, c'est-à-dire. pas de l'intérieur du même jvm.
Utilisez SetLocationBynplatform (true) code>
. P>
p>
REMARQUE Cette méthode doit fonctionner de la même manière dont les JVM identiques / différents.
Si vous avez besoin de cadres imbriqués (c.-à-d. Les cadres qui peuvent être un enfant d'un autre cadre), utilisez jinternalframe à la place. p>
Si vous devez créer de nouveaux cadres dans l'application existante lorsqu'il est invoqué à nouveau, utilisez un socket pour envoyer les arguments de la nouvelle image de la nouvelle application à la nouvelle application à la nouvelle application, puis quittez la nouvelle application. P> jframe code> s sont des composants de niveau supérieur, ils ne nid pas. p>
Ré. dernier paragraphe. Si l'application. Est lancé à l'aide de JWS, il pourrait utiliser le SingleInstangentervice Code> comme indiqué dans Cette démo. .
À moins que vous stiperez les multiples images de l'intérieur du même programme, vous devrez peut-être examiner les titres de processus ou des titres de fenêtre pouvant impliquer des bibliothèques autochtones.
@Occa vous ouvrez les différents cadres du même JVM ou une à la fois?
Du même JVM, tous ensemble.
Comme il semble que vous ayez non seulement choisi une réponse qui se sépare du comportement X-Plat, et ne fonctionne que pour un seul JVM, je vais ajouter .. Voir Utilisation de plusieurs jframes, bonne / mauvaise pratique?