ExtJS est assez riche au niveau des boutons et permet de contrôler finement leur aspect à l’instanciation. Il est possible d’indiquer une icône (ou une classe qui mettra l’icône en background), d’ajouter un texte, de choisir si l’icône est à gauche, à droite, au dessus ou en dessous du texte. Les boutons peuvent avoir 3 tailles différentes (small, medium et large) et on peut associer un menu à un bouton ce qui se matérialise par une petite flèche sur le bouton que l’on choisit de placer à droite ou en dessous. Cela donne beaucoup de combinaisons possibles que vous pouvez voir en démo ici : http://www.extjs.com/deploy/dev/examples/button/buttons.html
Malheureusement, une fois ces superbes boutons créés, il n’est plus possible de modifier grand chose… Vous pouvez encore changer la classe qui met l’icône en background (unBouton.setIconClass(’icon-class’); ) mais impossible de changer la taille du bouton, le placement de l’icône ou celui de la flèche du menu. De même, si un bouton n’a pas d’icône à la création, en ajouter une après coup va poser problème.
J’ai donc ajouté une petite méthode à la classe Ext.Button qui permet de changer tout ça même après la création des boutons ! Lire la suite de "ExtJS : changer le style d’un bouton dynamiquement"