mardi 3 mars 2015

Java - Superposer un JLabel sur un JToggleButton

Bonjour, Dans un travail, nous voulons représenter le plus fidèlement possible l'interface du logiciel Paint ( et ses fonctionnalités ! ). Nous voulons entre autres représenter les boutons permettant de changer la couleur avec une zone de couleur :


Il est donc composé d'un JToggleButton auquel on ajoute un JLabel. Pour éviter les problèmes de rafraîchissement, nous allons miser sur le fait qu'un JToggleButton est un conteneur. Nous allons donc créer et ajouter le JLabel au JToggleButton plutôt qu'à un JPanel. On doit cependant y aller dans le code plutôt qu'avec l'onglet Design.

Dessiner votre JButton normalement dans l'onglet Design. Trouvez-le dans votre code ( constructeur ). Suite à sa création,  ajoutez les lignes de code suivantes :

boutonCouleur1 = new JToggleButton("Couleur 1");
boutonCouleur1.setLayout( new FlowLayout()); // on assigne un FlowLayout au bouton car il sera un conteneur, un FlowLayout permettra de positionner le JLabel contenant la couleur plus facilement.
labelCouleur1 = new JLabel(); // création du JLabel, a été déclaré comme variable d'instance
labelCouleur1.setOpaque(true); // afin qu'il ne soit pas transparent, qu'il puisse représenter une couleur comme le noir dans celui ci-haut
boutonCouleur1.add(labelCouleur1); // le lable est ajouté au JToggleButton



On retourne dans l'onglet Design. Dans la fenêtre de structure, on voit que le JLabel est à l'intérieur du JToggleButton. Si on sélectionne le JLabel, il est minuscule ( qu'un point ). On doit le redimensionner. Étant donné qu'il est dans un FlowLayout, on doit le redimensionner avec la propriété preferredSize ( dans les propriétés avancées ). 

Le tour est joué ! Pour écrire couleur1 sur le JToggleButton, vous pouvez modifier la propriété verticalAlignment à Bottom.




lundi 2 mars 2015

Nouvelle activité au département : des présentations sur différents thèmes reliés à l'informatique !


Une présentation aura lieu à chaque moi sur un sujet relié à l'informatique. Ce mois-ci :De Pascaline à Pepper, petite histoire de nos relations cognitives.

La pensée, cette chose évanescente dont les humains furent les fiers dépositaires des millénaires durant, changent de sens en ce début de XXIième siècle.
Nous ne sommes plus seuls tributaires de ses manières.
Primates et mammifères marins se voient reconnaître de nouveaux droits issus de leur capacité cognitive.
Et un nouveau joueur s'apprête à survenir.
Une petite histoire de l'informatique sur les rapports cognitifs entre l'homo sapiens et sa machine.


Cette présentation de Jean-Marc Deschamps aura lieu le 25 mars à 18h00. Vous devez vous inscrire en utilisant le portail ( http://informatique.cvm.qc.ca/portail ) .