Comment centrer un rectangle dans un cadre Java
Problème :
En Java, vous avez créé un cadre rectangulaire avec une taille fixe de (800, 400) et l'avez défini comme non redimensionnable. Le rectangle, dessiné avec les coordonnées (50, 50, 700, 300), apparaît légèrement décentré vers le haut du cadre.
Réponse :
Le problème réside dans le fait que les cadres ont des décorations inhérentes (bordure et barre de titre) qui consomment de l'espace dans la zone du cadre. Lorsque vous peignez directement sur la surface d'un cadre, comme supposé dans ce cas, ces décorations peuvent déplacer le centre perçu du cadre.
Pour peindre le rectangle au véritable centre du cadre, vous devez le restituer sur le cadre. zone de contenu. Cette zone exclut les décorations et représente la surface disponible pour la peinture.
Démonstration :
Dans l'exemple de code Java fourni :
Le goodFrame utilise ensuite le PaintablePane comme volet de contenu, garantissant que toutes les peintures se produisent dans la zone désignée. Les décorations du cadre sont désormais considérées comme extérieures à la zone de peinture, et le rectangle est centré comme prévu.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!