2009-06-23 4 views
1

Nous avons un programme avec plusieurs fenêtres pivotantes de haut niveau (cadres).Existe-t-il un moyen de "joindre" les cadres Swing les uns aux autres?

Nous ajoutons une « mode de débogage » où pour chaque fenêtre de la demande initiale il devrait y avoir une fenêtre spécialisée qui affiche des informations et offre des contrôles relatifs à la fenêtre d'origine. Cela fonctionne dans le même processus que l'application d'origine, donc j'aurais accès à l'objet fenêtre d'origine. Comme cela double le nombre de fenêtres à l'écran (et il y en a plusieurs pour commencer), je me demande s'il y a un moyen pratique de "joindre" la nouvelle fenêtre à l'ancienne fenêtre de sorte que si la nouvelle fenêtre est sur le côté de la vieille fenêtre ils se déplaceraient ensemble et grandiraient ensemble verticalement.

+0

Pouvez-vous convertir les deux fenêtres à JInternalFrame? De cette façon, vous pouvez avoir un cadre externe qui contrôlera les deux fenêtres. –

Répondre

2

Je suppose que vous pouvez attacher un ComponentAdapter à la fenêtre cible et écouter les événements de déplacement de la fenêtre. Ajustez ensuite votre position de fenêtre de débogage en conséquence.

Editer: Je ne me souviens pas exactement, mais soit Java 7 ou Windows 7 a le support de snap ensemble de fenêtres automagiquement.

1

Si vous substituez la méthode sur la fenêtre d'origine setBounds(), vous pouvez chercher quand il est à la fois déplacé et redimensionné, puis déplacez vos fenêtres spéciales pour compenser.

Questions connexes