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

Agents de placement/Fenêtres Java Discussion :

[JFrame] Comment redimensionner ?


Sujet :

Agents de placement/Fenêtres Java

  1. #1
    Membre averti Avatar de dazz_x
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2006
    Messages : 269
    Points : 328
    Points
    328
    Par défaut [JFrame] Comment redimensionner ?
    Bonjour à tous et à toutes (et aux autres aussi !)

    J'ai un p'tit problème de redimensionnement ! J'ai une JFrame dont la méthode
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
        public void componentResized(ComponentEvent arg0) {
            System.out.println("Je change de taille...");
     
        }
    du componentListener n'est appellée qu'à la fin du redimensionnement (en gros quand on déclicke, si vous me permettez l'expression).
    J'aurais aimé un redimensionnement dynamique, i.e. à chaque mouvement de souris, que la méthode soit appellée... J'ai testé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
                Toolkit aToolkit=Toolkit.getDefaultToolkit();
                aToolkit.setDynamicLayout(true);
    mais pas d'amélioration...
    Est-ce que quelqu'un à une idée ?

    Merci à vous
    La différence entre la théorie et la pratique est plus mince en théorie qu'en pratique

  2. #2
    Membre averti Avatar de dazz_x
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2006
    Messages : 269
    Points : 328
    Points
    328
    Par défaut
    Rien à fair, ça ne fonctionne toujours pas...
    L'évènement est lancé quand le bouton de la souris est relaché, pas avant !!! Il n'y a pas un moyen de savoir qu'on est en train de redimensionner la fenêtre pour rafraîchir l'image ?
    La différence entre la théorie et la pratique est plus mince en théorie qu'en pratique

  3. #3
    Membre émérite
    Avatar de xavlours
    Inscrit en
    Février 2004
    Messages
    1 832
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 1 832
    Points : 2 410
    Points
    2 410
    Par défaut
    Bonjour,

    je tente un truc que je n'ai jamais essayé : as-tu essayé d'ajouter un MouseMotionListener sur la JFrame et d'utiliser mouseDragged ?

    C'est un peu le plan galère, et il y a peut être un moyen plus direct.
    "Le bon ni le mauvais ne me feraient de peine si si si je savais que j'en aurais l'étrenne." B.V.
    Non au langage SMS ! Je ne répondrai pas aux questions techniques par MP.
    Eclipse : News, FAQ, Cours, Livres, Blogs.Et moi.

  4. #4
    Membre averti Avatar de dazz_x
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2006
    Messages : 269
    Points : 328
    Points
    328
    Par défaut
    Merci pour l'idée


    Mais je me demande comment faire pour déterminer que le click souris d'origine est un click de redimensionnement ? en faisant un getCursor et en récupérant la forme ? tiens, j'vais p'tet essayer ça ...
    La différence entre la théorie et la pratique est plus mince en théorie qu'en pratique

  5. #5
    Membre actif
    Inscrit en
    Mai 2005
    Messages
    217
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Mai 2005
    Messages : 217
    Points : 220
    Points
    220
    Par défaut
    je suis peut etre con, mais j'ai du mal a voir le pb ...

    sur une frame tu as la methode setResizable(<boolean>);
    il suffit de la mettre a false (au passage qui est la valeur par defaut) et ensuite de gerer un layout ! nan ????

  6. #6
    Membre émérite
    Avatar de xavlours
    Inscrit en
    Février 2004
    Messages
    1 832
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 1 832
    Points : 2 410
    Points
    2 410
    Par défaut
    Ce n'est peut être pas nécessaire, vu que le contenu de la JFrame est décrit dans le RootPane. Donc les clics de déplacement seraient peut être reçus par le RootPane.

    A tester, donc.
    "Le bon ni le mauvais ne me feraient de peine si si si je savais que j'en aurais l'étrenne." B.V.
    Non au langage SMS ! Je ne répondrai pas aux questions techniques par MP.
    Eclipse : News, FAQ, Cours, Livres, Blogs.Et moi.

  7. #7
    Expert éminent sénior
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Suisse

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

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Points : 21 324
    Points
    21 324
    Par défaut
    Citation Envoyé par _beber85
    je suis peut etre con, mais j'ai du mal a voir le pb ...

    sur une frame tu as la methode setResizable(<boolean>);
    il suffit de la mettre a false (au passage qui est la valeur par defaut) et ensuite de gerer un layout ! nan ????
    Euh, si tu passes resizable à false, tu pourras plus du tout redimensionner ta fenêtre, alors que dazz_x veut gérer le redimensionnement

  8. #8
    Membre averti Avatar de dazz_x
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2006
    Messages : 269
    Points : 328
    Points
    328
    Par défaut
    Merci pour toutes vos réponses !
    Donc les clics de déplacement seraient peut être reçus par le RootPane.
    Je vais essayer ça de suite, car le click de redimensionnement n'est pas catché par la JFrame...je vais essayer le mouselistener sur le rootpane

    dazz_x veut gérer le redimensionnement
    c'est ça ! En fait, je veux gérer le rafraichissement du composant (Un JPanel qui me sert de canvas sur lequel j'affiche une image) pendant le redimensionnement ! Alors que là, le rafraichissement ne vient qu'à la fin du redimensionnement !
    La différence entre la théorie et la pratique est plus mince en théorie qu'en pratique

  9. #9
    Membre averti Avatar de dazz_x
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2006
    Messages : 269
    Points : 328
    Points
    328
    Par défaut
    Bon, alors je me suis arrangé avec une détection d'un changement de taille du canvas dans la méthode draw (qui elle est bien appellée pendant le redimensionnement)

    merci à tous.... et bon week end !
    La différence entre la théorie et la pratique est plus mince en théorie qu'en pratique

  10. #10
    Membre émérite
    Avatar de xavlours
    Inscrit en
    Février 2004
    Messages
    1 832
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 1 832
    Points : 2 410
    Points
    2 410
    Par défaut
    Petite précision : tu as parlé de JFrame et de Canvas. Il ne faut pas mélanger Swing et awt (voir la FAQ). Si tu utilises une JFrame, il faudrait utiliser un JPanel au lieu du Canvas.

    Bon week end à toi aussi.
    "Le bon ni le mauvais ne me feraient de peine si si si je savais que j'en aurais l'étrenne." B.V.
    Non au langage SMS ! Je ne répondrai pas aux questions techniques par MP.
    Eclipse : News, FAQ, Cours, Livres, Blogs.Et moi.

  11. #11
    Membre averti Avatar de dazz_x
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2006
    Messages : 269
    Points : 328
    Points
    328
    Par défaut
    C'est bien de rappeller ça, et je suis d'accord avec toi...

    le rafraichissement du composant (Un JPanel qui me sert de canvas sur lequel j'affiche une image)
    le mot canvas m'est resté des MFC avec VisualStudio
    La différence entre la théorie et la pratique est plus mince en théorie qu'en pratique

  12. #12
    Membre émérite
    Avatar de xavlours
    Inscrit en
    Février 2004
    Messages
    1 832
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 1 832
    Points : 2 410
    Points
    2 410
    Par défaut
    j'avais oublié et pas relu ...
    "Le bon ni le mauvais ne me feraient de peine si si si je savais que j'en aurais l'étrenne." B.V.
    Non au langage SMS ! Je ne répondrai pas aux questions techniques par MP.
    Eclipse : News, FAQ, Cours, Livres, Blogs.Et moi.

Discussions similaires

  1. Réponses: 2
    Dernier message: 23/09/2012, 17h09
  2. [D6] Comment redimensionner un TWebBrowser ?
    Par Lung dans le forum Composants VCL
    Réponses: 3
    Dernier message: 21/09/2005, 08h40
  3. Comment redimensionner un TEdit en fonction de son contenu ?
    Par Tempotpo dans le forum Composants VCL
    Réponses: 10
    Dernier message: 25/07/2005, 21h52
  4. [JFrame] Comment ouvrir une fenêtre maximiser
    Par dadg dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 11/12/2004, 18h38
  5. Comment redimensionner un jbutton ?
    Par Ares dans le forum JBuilder
    Réponses: 13
    Dernier message: 29/09/2003, 16h42

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