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

avec Java Discussion :

Comment bien gérer sa fenêtre?


Sujet :

avec Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 83
    Points : 61
    Points
    61
    Par défaut Comment bien gérer sa fenêtre?
    Bonjour à tous.
    Je suis en train de créer une fenêtre avec un nombre assez important de texte et autres composants.
    J'ai créer plusieurs JPanel (container qui contiendra tout, reglage pour les boutons, aperçu et validation).
    Mais voila, j'aimerai placer mes boutons et mes textes facilement dans chaque panel (par exemple suivant des coordonnées).
    Comment puis-je faire? Merci!

  2. #2
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 074
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

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

    Informations forums :
    Inscription : Août 2006
    Messages : 4 074
    Points : 7 978
    Points
    7 978
    Par défaut
    Cherche des informations a propos des layout.

    Ce que tu voudrais s'appelle nulllayout (position en x,y) je pense, mais est a éviter.
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 83
    Points : 61
    Points
    61
    Par défaut
    A éviter?
    J'aimerai bien, mais ça me semble la méthode la plus facile pour placer correctement ses composants, non?

  4. #4
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 074
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

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

    Informations forums :
    Inscription : Août 2006
    Messages : 4 074
    Points : 7 978
    Points
    7 978
    Par défaut
    J'ai ete fan des null layout a une époque... je pensais la meme chose que toi mais j'ai vite changer d'avis.

    En utilisant les bon layouts il y'a moyen d'avoir ce que tu esperais avoir avec ton null layout mais il va falloir un peu apprendre a mon avis.

    En general tu mets un borderlayout pour la fenetre principale et ensuite chacun des panel peut avoir son propre layout et ainsi de suite. (Mais cela depend de ton objectif au niveau de l'interface).

    Enfin c'est mon experience, a toi de voir
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 83
    Points : 61
    Points
    61
    Par défaut
    Ok!
    Merci pour tes conseils.
    Je pense que, vu que je débute vraiment et que mes programmes sont vraiment plus un jeu qu'un vrai projet, je vais me contenter de la méthode des null layout.
    Mais je suis bien curieux aussi de savoir les placer "normalement", cela viendra sans doute lorsque j'aurai gagner un peu d'expérience

  6. #6
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par Thedahu Voir le message
    A éviter?
    J'aimerai bien, mais ça me semble la méthode la plus facile pour placer correctement ses composants, non?
    C'est surtout la méthode la plus facile pour les placer de travers. D'une machine à l'autre les polices et le texte n'auront pas la même taille, suivant la langue le texte peux changer, etc. Avec un layout absolu, t'es certains que ca va dégueuler dans tous les sens.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 83
    Points : 61
    Points
    61
    Par défaut
    Voici ce que j'aimerai obtenir à peu près:



    Veuillez m'excuser, le dessin n'est absolument pas mon domaine.

  8. #8
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 074
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

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

    Informations forums :
    Inscription : Août 2006
    Messages : 4 074
    Points : 7 978
    Points
    7 978
    Par défaut
    Bon la je vois :
    A) 1 panneau principale
    B) 1 panneau centrale avec plein de texte et de bouton.
    C) 1 panneau plus petit a droite avec un liste ou un arbre, jsais pas quoi.
    D) 1 panneau en dessous (a droite mais pour le moment osef) avec des boutons.

    A) La comme ca je vois bien pour le panel principale de la frame un borderLayout.

    Avec comme propriété quand tu ajoutes le panel B : BorderLayout.CENTER
    Avec comme propriété quand tu ajoutes le panel C : BorderLayout.EAST
    Avec comme propriété quand tu ajoutes le panel D : BorderLayout.SOUTH

    B) Peut etre essayer un GridBagLayout.
    C) Encore un borderlayout, avec comme centre, la liste, et south le petit checkbox.
    D) Un BoxLayout.X_AXIS

    Tu peux essayer avec ceci est jouer avec l'editeur visuel de eclipse ou netbeans ou je ne sais ce que tu utilises.
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  9. #9
    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
    Il faut aussi voir quelles zones tu veux voir redimensionnées, en fonction du redimensionnement de la fenêtre.
    Ca permet de faire un choix dans les layouts.

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 83
    Points : 61
    Points
    61
    Par défaut
    ok.
    J'utilise Eclispe mais je n'ai pas de visual dedans.
    Je vais tenter ça, et comme dit fr1man de jouer avec les dimensions.

  11. #11
    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
    Je pense qu'on s'est mal compris.
    En gros, quand tu vas agrandir ta fenêtre, quel comportement souhaites-tu pour tes composants ? Que certains gardent la même taille ? Que d'autres s'agrandissent ?
    Je suis du même avis que wax78 et te conseille de partir sur les layouts et d'éviter de placer tes composants par coordonnées.

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 83
    Points : 61
    Points
    61
    Par défaut
    Ma fenêtre ne va pas varier car elle ne pourra pas s'agrandir.

  13. #13
    Membre régulier
    Homme Profil pro
    IT in outer space
    Inscrit en
    Novembre 2006
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : IT in outer space

    Informations forums :
    Inscription : Novembre 2006
    Messages : 88
    Points : 96
    Points
    96
    Par défaut
    Citation Envoyé par Thedahu Voir le message
    ok.
    J'utilise Eclispe mais je n'ai pas de visual dedans.
    Je vais tenter ça, et comme dit fr1man de jouer avec les dimensions.
    Il existe un excellent addon pour Eclipse qui s'appel Visual Editor et je l'utilise.
    Tu le trouvera facilement sur le site d'Eclipse. Pour le reste je suis pas moins neuneu que toi. Du moins je ressent cruellement mes manques sur le principe de base de Java.
    Bonne chance en tout cas.

  14. #14
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 83
    Points : 61
    Points
    61
    Par défaut
    Oui, il faudra que j'essaye de voir ce que ça peu donner!
    Mais j'ai enfin réussi a avoir à peu près ce que je voulais, et notamment avec GridBagLayout qui est vraiment flexible.
    Je vais quand même voir ce que va me sortir cet addon.

  15. #15
    Membre averti Avatar de welcome_59
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2007
    Messages
    203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 203
    Points : 352
    Points
    352
    Par défaut
    Je pense que tu pourrais aussi t'en sortir avec ce que je me risque à appeler un positionnement absolu avec des coordonnées relatives:
    Le composant X a une position x correspondant à 1/8 de la largeur du composant Y qui lui sert de conteneur ...

    En fixant des dimensions, min, max, etc. ça peut très bien fonctionner, en n'oubliant bien entendu pas les questions d'environnement de bureau différents et de redimensionnement de la fenêtre.

    J'ai déjà utilisé cette technique et elle fonctionne. Par contre c'est particulièrement fastidieux.
    SCJP 5 | CAPM

Discussions similaires

  1. Réponses: 3
    Dernier message: 29/05/2007, 16h50
  2. [Include/Require] Comment bien gérer les chemins ?
    Par Wookai dans le forum Langage
    Réponses: 1
    Dernier message: 11/04/2007, 09h11
  3. Comment bien gérer les utilisateurs multiples
    Par Vesta dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 29/06/2006, 08h48
  4. [JDesktopPane] Comment bien gérer les JInternalFrame ?
    Par calogerogigante dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 05/04/2006, 12h45

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