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

 Java Discussion :

utilisation spéciale d'un JTabbedPane


Sujet :

Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    159
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 159
    Points : 61
    Points
    61
    Par défaut utilisation spéciale d'un JTabbedPane
    Bonjour

    dans une interface java je veux utilsé un JTabbedPane donc j'ai créer mon 1er onglet j'ai ajouter un JPanel dans cette onglet dans la méthode paint du JPanel je déssine un arriere plans dans le JPanel,

    jusqu'au là tous marche bien donc juste au moment du chargement il rentre dans la méthode paint et il me déssine l'arriere plans (c'est juste déssiné des carrées)

    mais enfaite a chaque fois je change un onglet et qd je revient sur l'autre onglet il redéssine l'arriere plans donc il rentre encore une fois dans la méthode JPanel .

    donc ce que je veux savoir si c'est posible de par exemple récupérer le JPanel qui été avant et ne pas le redéssiné (pour des problemes de performance)

    donc si vous avez des idées n'hésité pas merci d'avance pour votre aide.

  2. #2
    Membre régulier
    Profil pro
    Dév FrontEnd
    Inscrit en
    Avril 2005
    Messages
    239
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Dév FrontEnd

    Informations forums :
    Inscription : Avril 2005
    Messages : 239
    Points : 114
    Points
    114
    Par défaut
    Forcément, la méthode paint est appelée à chaque fois que tu veux afficher un élément !

    Tu pourrais par exemple écrire directement le code te permettant de dessiner le fond de ton JPanel dans son constructeur ...

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    159
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 159
    Points : 61
    Points
    61
    Par défaut
    merci pour ta réponse

    justement moi je voulais le faire dans une méthode a part ou dans le constructeur de ma classe, comme ça il sera appelé juste une fois,
    mais le problème c'est que j'ai pas l'objet graphique qui est passé comme paramètre dans la méthodes paint(graphique g)!!!!! c'est à partir de ce objet que moi je dessine des graphiques sur mon arrière plans
    donc est ce que c'est possible de créer un nouveau graphique ??

    moi je fait
    apres pour utilisé il me demande de instanciée donc j'ai fait :
    mais après je peut jamais utilisé puis ce qu'il est null!!!!!!!

    donc si vous pouvez me dire comment instanciée mon graphique pour que je puisse utilisé pour dessiner.

    merci d'avance pour votre réponse.

  4. #4
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    On n'instancie jamais la classe Graphics à la main. Il faut la récupérer d'un contexte fourni soit par une image soit par un composant.

    Pour dessiner sur un composant il faut redéfinir la méthode paintComponent(Graphics g) et utiliser les Graphics passés en paramètre pour dessiner sur le composant. Ce contexte n'est disponible que pour la durée de l'appel à la méthode paint.

    ET non il n'est pas possible de récupérer le panel précédent.

    Toutefois dans une optique de performance tu peux parfaitemement dessiner le fond de ton JPanel dans une image. De cette façon tu n'auras qu'à réaliser les opérations de dessin une fois et une seule, il te restera juste à dessiner l'image sur ton JPanel dans ton paintComponent ce qui sera largement plus rapide.
    Hey, this is mine. That's mine. All this is mine. I'm claiming all this as mine. Except that bit. I don't want that bit. But all the rest of this is mine. Hey, this has been a really good day. I've eaten five times, I've slept six times, and I've made a lot of things mine. Tomorrow, I'm gonna see if I can't have sex with something.

Discussions similaires

  1. Utilisation spéciale de LIKE
    Par tonyskn dans le forum Langage SQL
    Réponses: 4
    Dernier message: 12/07/2024, 16h08
  2. comment utiliser JTabbedPane
    Par altaro dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 14/05/2009, 08h21
  3. Utiliser police spéciale ttf présente sur un serveur
    Par sterix92 dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 01/09/2008, 12h39
  4. [HTML] Utiliser police spéciale ttf présente sur un serveur
    Par sterix92 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 31/08/2008, 19h24
  5. Problème utilisation de JtabbedPane
    Par henpower dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 14/11/2007, 10h47

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