dans gxt, j'ai un contrôle avec un panneau important ajouté à la composante inférieure, comme celui-ci:
public void setVisibility(boolean isVisible) { panel.setVisible(isVisible); doLayout(true); recalculate(); repaint(); }
5 Réponses :
Je ne sais pas sur gxt, mais dans GWT, j'utiliserais l'un des hth. p> Force () Code> ou
Forcelayout () Code> Méthodes sur mon panneau. Peut-être qu'il y a une API similaire à faire ça! P>
Hmm ... Je n'arrive pas à trouver une méthode .Force () ou .Forcelayout () sur ContentPanel (la superclasse de cette classe que j'utilise). Quelle classe expose .force ()?
@Cuga Quelle version de gxt utilisez-vous? J'utilise GXT 4.0.2 et la classe ContentPanel a la méthode Forcelayout (). Cela a fonctionné pour moi l'utiliser.
@vhbazan ... Je ne dunno, c'était il y a 7 ans. Mais si quelqu'un utilise 4.0.2 et qui aide, alors bonne affaire
Je suggérerais de regarder ceci: http://davidmaddison.blogspot.com/2008/12/gwt-Rendance -Process.html p>
Ce que vous pouvez essayer de faire est d'ajouter des addlisteners au panneau et essayez d'appeler le panneau.Layout () là p>
Cet article prétend que les composants supérieurs et inférieurs à ne pas Participer à la mise en page Une fois que le panneau a été rendu et suggère une solution de contournement manuelle (en utilisant Rowlayout) ou définir manuellement la taille du panneau. p>
envisagez de trouver les tailles du parent et de l'appelant omnimètre (largeur, hauteur) p>
Dans le dernier gxt, vous pouvez faire.
this.layout(true);
Ce truc de l'événement Redimensionnez le feu est si subtil, alors hacky, si caché, mais c'est tellement freaking fonctionne ...
Je sais que c'est une vieille question, mais je rencontre un problème similaire et je ne trouve aucun exemple de comment utiliser l'événement Event.Resize. Avez-vous un échantillon de code pour inclure dans votre réponse? Merci d'avance.
Avez-vous essayé d'utiliser la méthode setlayoutonChange () code> de
conentpanel code>? p>