IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Composants Java Discussion :

Couleur transparente sur un bouton


Sujet :

Composants Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2007
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 55
    Par défaut Couleur transparente sur un bouton
    Salut,

    J'ai fait un bouton semi-transparent grace a une technique que j'ai trouvé sur internet
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    final Color bright = Color.black.brighter();
    final Color couleurNoirTransparente = new Color (bright.getRed(), bright.getGreen(), bright.getBlue(), 80);
    Lorsque je met en background "couleurNoirTransparente" sur un JLabel, ca marche très bien, mais lorsque j'applique la couleur sur un bouton, chaque fois que ma suris parcours le bouton, le bouton devient moins transparent. Je ne sais pas quoi faire pour que le bouton garde la meme transparence...
    Est-ce-qu'il existe une autre méthode plus adaptée pour rendre un JButton semi-transparent.
    Merci

  2. #2
    Membre Expert
    Avatar de visiwi
    Profil pro
    Inscrit en
    Février 2008
    Messages
    1 052
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 1 052
    Par défaut
    Salut,

    C'est le comportement naturel. Lorsque le curseur survol le bouton, tu as un highlight qui donne cela. De même si tu presse le bouton en gardant le clic enfoncer, tu verra que la couleur change encore, vers celle d'origine du LAF.
    Pour changer cela, il faudrait réécrire l'objet responsable du design.

    Sinon, tu as une méthode beaucoup plus simple. Tu rend ton bouton complètement transparent, puis tu lui assigne des icones de couleur (en les écrivant toi même en implémentant l'interface Icon), pour chaque stade avec les méthodes :
    setIcon(icon);
    setDisabledIcon(iconDisabled);
    setRolloverIcon(iconUp);
    setPressedIcon(iconDown);

  3. #3
    Membre confirmé
    Inscrit en
    Octobre 2007
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 55
    Par défaut
    Merci d'avoir repondu, je vais essayer ca.

  4. #4
    Membre confirmé
    Inscrit en
    Octobre 2007
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 55
    Par défaut
    Merci, avec ca ca marche + ou - bien.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
       public class MonIcon implements Icon
       {
          private Component c;
          private boolean premiereFois = true;  
     
           public void paintIcon(Component a_c, Graphics g, int x, int y)
          {
             c = a_c;
             if(premiereFois == true)
             {
                g.setColor(new Color(0,0,0,50));
                premiereFois = false;
             }
             else
             {
                g.setColor(new Color(0,0,0,0));
             }
             g.fillRect(x-c.getWidth()/2, y-c.getHeight()/2, c.getWidth(), c.getHeight());
          }
           public int getIconHeight()
          {
             if(c != null)
             {
                return c.getHeight();
             }
             else
             {
                return 0;
             }
          }
     
           public int getIconWidth()
          {
             if(c != null)
             {
                return c.getWidth();
             }
             else
             {
                return 0;
             }
          }
     
       }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. couleur sur un bouton radio
    Par mauyebo dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 05/08/2010, 09h31
  2. Réponses: 5
    Dernier message: 30/01/2008, 21h24
  3. Changer couleur de fond en pressant sur un bouton
    Par gids01 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 22/02/2007, 15h17
  4. Couleur transparente sur une texture TGA
    Par alex6891 dans le forum OpenGL
    Réponses: 13
    Dernier message: 29/07/2006, 22h16
  5. [JButton] getContenPane() et couleur sur les boutons
    Par harris_macken dans le forum Composants
    Réponses: 4
    Dernier message: 05/06/2005, 07h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo