jaoued zahraoui
Messages postés13Date d'inscriptiondimanche 29 février 2004StatutMembreDernière intervention20 novembre 2015
-
4 juin 2007 à 13:50
Joe59211
Messages postés1Date d'inscriptionlundi 2 mai 2011StatutMembreDernière intervention 3 mai 2011
-
3 mai 2011 à 15:27
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
Joe59211
Messages postés1Date d'inscriptionlundi 2 mai 2011StatutMembreDernière intervention 3 mai 2011 3 mai 2011 à 15:27
Bonjour à vous !
J'ai trouvé l'idée vraiment sympa et donc je l'ai essayé
Seulement ca ne donne pas le résultat escompté!
j'ai simplement utilisé les 5 constructeurs de MainButton et ai affiché les boutons dans une JFrame
le resultat et que pour tous les constructeurs on obtiens un "demi bouton" comprenez qu'on ne voit que l'hemisphere nord du boutton
de plus le constructeur MainButton(Color c) ne change pas la couleur
et MainButton(Icon icon) rajoute licone DERRIERE le dit boutton , elle est donc invisible...
bon je n'ai fait que tester le code fournit et ne me suis pas encore pencher sur les eventuelles erreurs puisque je ne me suis pas encore essayé a la personalisation de composants
par contre si vous aviez une version corrigée ca m'interresserait! ^^
Amicalement, Joe.
codesambinfo
Messages postés8Date d'inscriptionjeudi 22 octobre 2009StatutMembreDernière intervention11 novembre 2009 23 oct. 2009 à 23:23
Je s8 heureux
ca code tre fort
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013131 4 juin 2007 à 19:20
Très bien, c'est une bonne évolution de ma source.
Bien vu ;)
DarK Sidious
jaoued zahraoui
Messages postés13Date d'inscriptiondimanche 29 février 2004StatutMembreDernière intervention20 novembre 2015 4 juin 2007 à 13:50
bonjour,
J'ai trouvé ca tellement génial que j'en ai fait ma propre adaptation.
Je vous la mets à disposition :
public class MainButton extends JButton {
private static final long serialVersionUID = 1L;
private final int BULLE_WIDTH = 50;
private Color BULLE_COLOR = Color.green.darker(); // @jve:decl-index=0:
private Color BULLE_COLOR_B = BULLE_COLOR.brighter(); // @jve:decl-index=0:
private Color currentColor = BULLE_COLOR;
private int x = 5;
private int y = 5;
public MainButton() {
initialize();
}
public MainButton(Color BULLE_COLOR) {
this.BULLE_COLOR = BULLE_COLOR.darker();
initialize();
}
public MainButton(Icon arg0) {
super(arg0);
initialize();
}
public MainButton(String arg0) {
super(arg0);
initialize();
}
public MainButton(Action arg0) {
super(arg0);
initialize();
}
public MainButton(String arg0, Icon arg1) {
super(arg0, arg1);
initialize();
}
/**
* This method initializes this
*
*/
private void initialize() {
this.setFocusPainted(false);
this.setSize(new Dimension(BULLE_WIDTH + 10, BULLE_WIDTH + 10));
this.setBorderPainted(false);
this.setContentAreaFilled(false);
this.setOpaque(false);
this.addMouseListener(new java.awt.event.MouseListener() {
public void mouseEntered(java.awt.event.MouseEvent e) {
// si la souris passe au dessus du bouton et que le bouton est
// actif...
if (isEnabled()) {
// on change la couleur
currentColor = BULLE_COLOR_B;
}
}
public void mouseClicked(java.awt.event.MouseEvent e) {
}
public void mousePressed(java.awt.event.MouseEvent e) {
x += 2;
y += 2;
}
public void mouseReleased(java.awt.event.MouseEvent e) {
x -= 2;
y -= 2;
}
public void mouseExited(java.awt.event.MouseEvent e) {
// si la souris sort du bouton et que le bouton est actif...
if (isEnabled()) {
// on rétablit la couleur d'origine
// System.out.println("couleur d'origine");
currentColor = BULLE_COLOR;
}
}
});
}
@Override
public void paint(Graphics arg0) {
super.paint(arg0);
Graphics2D g2d = (Graphics2D) arg0;
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
g2d.setColor(currentColor);
g2d.setStroke(new BasicStroke(3));
g2d.drawOval(x, y, BULLE_WIDTH, BULLE_WIDTH);
GradientPaint gradient = new GradientPaint(BULLE_WIDTH / 2, y,
currentColor, BULLE_WIDTH / 2, y + BULLE_WIDTH, Color.white);
g2d.setPaint(gradient);
g2d.fillOval(x, y, BULLE_WIDTH, BULLE_WIDTH);
gradient = new GradientPaint(BULLE_WIDTH / 2, y, Color.white,
BULLE_WIDTH / 2, y + BULLE_WIDTH / 2, new Color(currentColor
.getRed(), currentColor.getGreen(), currentColor
.getBlue(), 0));
g2d.setPaint(gradient);
g2d.fillOval(x + BULLE_WIDTH / 5, y, 5 * BULLE_WIDTH / 8,
BULLE_WIDTH / 3);
}
3 mai 2011 à 15:27
J'ai trouvé l'idée vraiment sympa et donc je l'ai essayé
Seulement ca ne donne pas le résultat escompté!
j'ai simplement utilisé les 5 constructeurs de MainButton et ai affiché les boutons dans une JFrame
le resultat et que pour tous les constructeurs on obtiens un "demi bouton" comprenez qu'on ne voit que l'hemisphere nord du boutton
de plus le constructeur MainButton(Color c) ne change pas la couleur
et MainButton(Icon icon) rajoute licone DERRIERE le dit boutton , elle est donc invisible...
bon je n'ai fait que tester le code fournit et ne me suis pas encore pencher sur les eventuelles erreurs puisque je ne me suis pas encore essayé a la personalisation de composants
par contre si vous aviez une version corrigée ca m'interresserait! ^^
Amicalement, Joe.
23 oct. 2009 à 23:23
ca code tre fort
4 juin 2007 à 19:20
Bien vu ;)
DarK Sidious
4 juin 2007 à 13:50
J'ai trouvé ca tellement génial que j'en ai fait ma propre adaptation.
Je vous la mets à disposition :
package com.ui.comp;
import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.GradientPaint;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import javax.swing.Action;
import javax.swing.Icon;
import javax.swing.JButton;
public class MainButton extends JButton {
private static final long serialVersionUID = 1L;
private final int BULLE_WIDTH = 50;
private Color BULLE_COLOR = Color.green.darker(); // @jve:decl-index=0:
private Color BULLE_COLOR_B = BULLE_COLOR.brighter(); // @jve:decl-index=0:
private Color currentColor = BULLE_COLOR;
private int x = 5;
private int y = 5;
public MainButton() {
initialize();
}
public MainButton(Color BULLE_COLOR) {
this.BULLE_COLOR = BULLE_COLOR.darker();
initialize();
}
public MainButton(Icon arg0) {
super(arg0);
initialize();
}
public MainButton(String arg0) {
super(arg0);
initialize();
}
public MainButton(Action arg0) {
super(arg0);
initialize();
}
public MainButton(String arg0, Icon arg1) {
super(arg0, arg1);
initialize();
}
/**
* This method initializes this
*
*/
private void initialize() {
this.setFocusPainted(false);
this.setSize(new Dimension(BULLE_WIDTH + 10, BULLE_WIDTH + 10));
this.setBorderPainted(false);
this.setContentAreaFilled(false);
this.setOpaque(false);
this.addMouseListener(new java.awt.event.MouseListener() {
public void mouseEntered(java.awt.event.MouseEvent e) {
// si la souris passe au dessus du bouton et que le bouton est
// actif...
if (isEnabled()) {
// on change la couleur
currentColor = BULLE_COLOR_B;
}
}
public void mouseClicked(java.awt.event.MouseEvent e) {
}
public void mousePressed(java.awt.event.MouseEvent e) {
x += 2;
y += 2;
}
public void mouseReleased(java.awt.event.MouseEvent e) {
x -= 2;
y -= 2;
}
public void mouseExited(java.awt.event.MouseEvent e) {
// si la souris sort du bouton et que le bouton est actif...
if (isEnabled()) {
// on rétablit la couleur d'origine
// System.out.println("couleur d'origine");
currentColor = BULLE_COLOR;
}
}
});
}
@Override
public void paint(Graphics arg0) {
super.paint(arg0);
Graphics2D g2d = (Graphics2D) arg0;
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
g2d.setColor(currentColor);
g2d.setStroke(new BasicStroke(3));
g2d.drawOval(x, y, BULLE_WIDTH, BULLE_WIDTH);
GradientPaint gradient = new GradientPaint(BULLE_WIDTH / 2, y,
currentColor, BULLE_WIDTH / 2, y + BULLE_WIDTH, Color.white);
g2d.setPaint(gradient);
g2d.fillOval(x, y, BULLE_WIDTH, BULLE_WIDTH);
gradient = new GradientPaint(BULLE_WIDTH / 2, y, Color.white,
BULLE_WIDTH / 2, y + BULLE_WIDTH / 2, new Color(currentColor
.getRed(), currentColor.getGreen(), currentColor
.getBlue(), 0));
g2d.setPaint(gradient);
g2d.fillOval(x + BULLE_WIDTH / 5, y, 5 * BULLE_WIDTH / 8,
BULLE_WIDTH / 3);
}
} // @jve:decl-index=0:visual-constraint="10,10"