Trouver de “vrais” hauteur/largeur de Swing/AWT objet

Parce que Canvas3D n'a pas la possibilité de redimensionner dynamiquement avec l'image parent, je voudrais être en mesure de suivre lorsqu'un utilisateur redimensionne une fenêtre, puis la redimensionner manuellement moi-même. (Si cela finit par s'écraser Canvas3D, comme certains docs suggèrent, je vais tout simplement la détruire et recréer lorsque l'utilisateur redimensionne la fenêtre). Le cadre de cette procédure implique d'être capable de dire avec exactitude comment big le conteneur panel est de commencer avec.

Les deux méthodes que j'ai essayé:

panneau.getHeight(); 
le panneau.getPreferredSize().hauteur;

Ne semblent pas exactement le rapport des choses: getHeight() est toujours zéro, et getPreferredSize() renvoie les nombres qui ne sont pas en réalité rien à voir avec la taille réelle de l'écran.

Des idées?

Modifier: Oui, j'ai pris un débogueur sur le panneau à l'objet et à la main inspecté le non-propriétés de l'objet et je n'ai rien vu qui ressemblait à de la largeur/hauteur. Certes, il y sont des sous-objets que je ne regarde pas. Aussi, peut-être que la fenêtre doit être visible (il n'est pas, au point où j'en suis de l'interfaçage de l'objet) quand j'ai une requête pour hauteur/objet?

Edit 2: Donc, Swing classes sont des sous-classes des classes AWT, donc j'imagine que si vous êtes en mesure de trouver la hauteur/largeur de ceux-ci, l'approche serait de généraliser. J'ai modifié le titre en conséquence.

OriginalL'auteur |