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

AWT/Swing Java Discussion :

effet bouton au survol de la souris


Sujet :

AWT/Swing Java

  1. #1
    Membre du Club
    Inscrit en
    Septembre 2007
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 72
    Points : 50
    Points
    50
    Par défaut effet bouton au survol de la souris
    Bonjour,

    Je souhaite que lorsque la souris survole un bouton qui contient une image, le bouton devient plus grand. Je pense qu'on appelle ça l'effet fish eye.

    Avez vous une idée sur le moyen permettant de réaliser ceci?

    Merci

  2. #2
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Points : 7 163
    Points
    7 163
    Par défaut
    Peut-être en affichant le bouton plus grand sur le GlassPane de ta JFrame. Tu connais (ou peux connaitre) les coordonnées du bouton dans ta JFrame, il te suffit d'afficher une image plus grande dans le GlassPane centrée sur le bouton initial.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

  3. #3
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 141
    Points
    4 141
    Par défaut
    regarde du côté des méthodes setRolloverXXX de la classe AbstractButton dont hérite JButton.

  4. #4
    Membre du Club
    Inscrit en
    Septembre 2007
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 72
    Points : 50
    Points
    50
    Par défaut
    En fait mon bouton est dans une barre d'outil. J'ai essayé avec setRolloverIcon et j'ai associé la meme icone que celle du bouton avec juste ses dimensions en plus grand mais j'ai pas eu l'effet souhaité. L'icone s'affiche à l'intérieur du bouton et elle est tronquée.
    Aurais je fais une mauvaise manipulation?
    Auriez vous un petit bout de code comme exemple?

    Merci

  5. #5
    Membre du Club
    Inscrit en
    Septembre 2007
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 72
    Points : 50
    Points
    50
    Par défaut
    J'ai trouvé un moyen assez simple pour faire ceci:
    - Lorsque la souris est sur le bouton, sa taille est augmentée avec setSize()
    - Lorsque la souris quitte le bouton j'utilise setSize() pour affecter au bouton sa taille initiale.

    C'est une méthode trés simple mais je pense qu'il y en a mieux...

    Quelqun aurait une idée?

  6. #6
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Points : 7 163
    Points
    7 163
    Par défaut
    Citation Envoyé par d_hazem Voir le message
    J'ai trouvé un moyen assez simple pour faire ceci:
    - Lorsque la souris est sur le bouton, sa taille est augmentée avec setSize()
    - Lorsque la souris quitte le bouton j'utilise setSize() pour affecter au bouton sa taille initiale.

    C'est une méthode trés simple mais je pense qu'il y en a mieux...

    Quelqun aurait une idée?
    Simple, mais si ça marche, pourquoi chercher plus loin ?
    qu'est-ce qui ne te plait pas dans ta technique ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

  7. #7
    Membre du Club
    Inscrit en
    Septembre 2007
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 72
    Points : 50
    Points
    50
    Par défaut
    S'il y a une façon plus propre et plus professionnelle à faire ceci, pourquoi pas...Il faut tjs chercher à faire mieux et srt à optimiser les lignes de codes.
    En plus avec la méthode que j'ai fait, le bouton grandit mais pas l'image qui est dedans...L'effet que je souhaite obtenir c'est comme si on passait une loupe sur le bouton au moment ou la souris passe dessus.Voilà
    J'ai essayé setRolloverIcon mais ça ne marche pas...

    Alors, d'autres idées?

  8. #8
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 840
    Points : 22 854
    Points
    22 854
    Billets dans le blog
    51
    Par défaut
    Des choses similaires sont traitees dans le livre de Gfx "Filthy Rich Clients", Addison-Wesley, ISBN 978-0-13-241393-0 au chapitre 7, section Spring Fever, page 486. Essaie de voir du cote des exemples disponibles sur le site web du livre : http://filthyrichclients.org/ si jamais ceux-ci sont dispos.
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  9. #9
    Membre du Club
    Inscrit en
    Septembre 2007
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 72
    Points : 50
    Points
    50
    Par défaut
    J'ai essayé d'utiliser la méthode setRolloverIcon mais le problème c'est que lorsque la souris est sur le bouton, l'icone du bouton disparait et rien ne s'affiche:

    voici ce que j'ai mis comme code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public void mouseEntered(MouseEvent e) {
    // TODO Auto-generated method stub
    Icon rolloverIcon = new ImageIcon("/images/flash.png");
    jButton1.setRolloverIcon(rolloverIcon);
    }
    Des idées?

  10. #10
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 840
    Points : 22 854
    Points
    22 854
    Billets dans le blog
    51
    Par défaut
    Non, setRolloverIcon() ne doit pas (generalement) etre utilise en reaction au passage de la souris mais doit etre utilisee en conjonction avec setRolloverEnabled() ; une fois active c'est le bouton qui mettra de lui-meme la bonne icone lors du passage de la souris si cela est supporte par le Look and Feel.

    Dans le repertoire du JDK, voir demo/JFC/SwingSet2.
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  11. #11
    Membre du Club
    Inscrit en
    Septembre 2007
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 72
    Points : 50
    Points
    50
    Par défaut
    Voilà mon code mais ça ne marche toujours pas: il y a juste l'icone qui disparait

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Icon icone = new ImageIcon(getClass().getResource("/images/flash.png"));
    jButton1 = new JButton();
    jButton1.setIcon(icone);
    jButton1.setRolloverEnabled(true);
    jButton1.setRolloverIcon(new ImageIcon("/images/apply.png"));
    Aurais je oublié quelque chose

Discussions similaires

  1. Réponses: 0
    Dernier message: 17/03/2013, 00h03
  2. [Article] Menu de navigation fixe avec effet de slide au survol de la souris
    Par FirePrawn dans le forum Publications (X)HTML et CSS
    Réponses: 4
    Dernier message: 04/10/2012, 12h59
  3. [CSS 3] Menu de navigation fixe avec effet de slide au survol de la souris
    Par FirePrawn dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 04/10/2012, 12h59
  4. Titre au survol de la souris sur un bouton
    Par Kryptum dans le forum Windows Presentation Foundation
    Réponses: 2
    Dernier message: 30/05/2010, 15h51
  5. Réponses: 3
    Dernier message: 09/08/2004, 12h24

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