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

Interfaces Graphiques en Java Discussion :

Barre de progression et chargement d'images


Sujet :

Interfaces Graphiques en Java

  1. #1
    Membre éclairé
    Avatar de buzzkaido
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2004
    Messages
    821
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

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

    Informations forums :
    Inscription : Juillet 2004
    Messages : 821
    Points : 734
    Points
    734
    Par défaut Barre de progression et chargement d'images
    Bonjour,

    Bon, je ne trouve rien sur le net, donc je pose la question....

    Comment afficher la progression du chargement d'une image ?

    Pour l'instant, j'utilise un MediaTracker, mais il ne permet de ne savoir que :
    * l'image n'est pas chargée
    * erreur de chargement
    * l'image est chargée

    et pas la progression du chargement....

    Comment faire ? Avec un fileInputStream pour lire le fichier et en afficher la progression, puis decoder l'image ?

    Merci !

  2. #2
    Membre expert
    Avatar de ®om
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 815
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 815
    Points : 3 080
    Points
    3 080
    Par défaut
    Citation Envoyé par buzzkaido
    Bonjour,

    Bon, je ne trouve rien sur le net, donc je pose la question....

    Comment afficher la progression du chargement d'une image ?

    Pour l'instant, j'utilise un MediaTracker, mais il ne permet de ne savoir que :
    * l'image n'est pas chargée
    * erreur de chargement
    * l'image est chargée

    et pas la progression du chargement....

    Comment faire ? Avec un fileInputStream pour lire le fichier et en afficher la progression, puis decoder l'image ?

    Merci !
    Tu peux utiliser un ImageObserver pour observer le chargement par le Toolkit.
    Ensuite, à chaque "imageUpdate" tu peux calculer l'avancement, que tu peux faire apparaître dans une JProgressBar (attention à bien utiliser un Thread pour le chargement et à mettre à jour la progression dans l'EDT).

  3. #3
    Membre éclairé
    Avatar de buzzkaido
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2004
    Messages
    821
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

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

    Informations forums :
    Inscription : Juillet 2004
    Messages : 821
    Points : 734
    Points
    734
    Par défaut
    Merci !

    Mais, euh... comment je calcule l'avancement ?

    Un truc du genre Ko chargés/Ko total, je suppose, mais comment recuperer ces valeurs ?

  4. #4
    Membre expert
    Avatar de ®om
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 815
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 815
    Points : 3 080
    Points
    3 080
    Par défaut
    Citation Envoyé par buzzkaido
    Merci !

    Mais, euh... comment je calcule l'avancement ?

    Un truc du genre Ko chargés/Ko total, je suppose, mais comment recuperer ces valeurs ?
    Ou nombre de pixels chargés sur nombre de pixels au total...

  5. #5
    Membre éclairé
    Avatar de buzzkaido
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2004
    Messages
    821
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

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

    Informations forums :
    Inscription : Juillet 2004
    Messages : 821
    Points : 734
    Points
    734
    Par défaut
    bien sur, mais comment je recupere le nbre de pixels chargés, mon gros probleme, c'est ça....

    paske dans un ImageObserver, y'a :

    ABORT -> c'est interessant mais c'est pas ça...
    ALLBITS -> ca indique que le chargement est fini, donc pas la progression
    ERROR -> c'est interessant mais c'est pas ça...
    FRAMEBITS -> mes images ne sont pas multi-frame
    HEIGHT -> je le recupere plus tard une fois l'image chargée
    PROPERTIES -> je le recupere plus tard une fois l'image chargée
    SOMEBITS -> je ne fait pas de "scalage" de l'image
    WIDTH -> je le recupere plus tard une fois l'image chargée

    et dans les arguments de imageUpdate, il y a la meme chose :

    int infoflags,
    int x,
    int y,
    int width,
    int height)

    Alors soit j'ai rien suivi a ce que tu essaie de m'expliquer, soit certains de ses champs m'echappent....

    Merci de ton aide !

  6. #6
    Membre éclairé
    Avatar de buzzkaido
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2004
    Messages
    821
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

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

    Informations forums :
    Inscription : Juillet 2004
    Messages : 821
    Points : 734
    Points
    734
    Par défaut
    Ok...

    Ca m'apprendra à chercher par moi-meme !

    J'ai trouvé la reponse ici :

    http://www.sdv.fr/pages/casa/html/java-image.html

    Lors d'un appel de ImageUpdate,

    infoflag contient :
    * WIDTH : la largeur de l'image est maintenant connue. Donc un appel à getWidth() renverra la largeur de l'image (et non pas -1 qui est la valeur renvoyée lorsqu'elle n'est pas encore connue).

    * HEIGHT : idem pour la hauteur de l'image.

    * PROPERTIES : les propriétés de l'image sont connues, donc un appel à getProperties() sera renseigné.

    * SOMEBITS : indique que quelques pixels de l'image ont été chargés. Lorsque ce flag est activé, x, y, width et heigth donnent la portion de l'image qui est chargée (et donc que l'on peut maintenant dessiner).

    * FRAMEBITS : indique qu'une frame au moins d'une image multiframe a été chargée. Les champs x, y, width et heigth n'ont alors aucune signification.

    * ALLBITS : indique que toute l'image a été chargée et qu'on peut maintenant l'afficher.

    * ERROR : indique qu'une erreur s'est produite lors du chargement. ABORT peut être activé ou non. Une deuxième tentative de chargement est inutile car elle échoura. Une telle erreur peut se produire si l'URL de l'image n'est pas valide ou si le fichier image lui même n'est pas valide.

    * ABORT : indique une erreur récupérable (si ERROR n'est pas activé). On peut donc retenter un chargement de l'image. Cette erreur peut survenir s'il s'est produit une erreur sur le réseau lui même.

    Et donc, si WIDTH et HEIGHT sont renseignés, on peut faire :

    chargement = getWidth()*getHeight()/(width*height)

    où width et height sont les arguments de imageUpdate !


    J'ai juste ?

  7. #7
    Membre expert
    Avatar de ®om
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 815
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 815
    Points : 3 080
    Points
    3 080
    Par défaut
    Citation Envoyé par buzzkaido
    bien sur, mais comment je recupere le nbre de pixels chargés, mon gros probleme, c'est ça....

    paske dans un ImageObserver, y'a :

    ABORT -> c'est interessant mais c'est pas ça...
    ALLBITS -> ca indique que le chargement est fini, donc pas la progression
    ERROR -> c'est interessant mais c'est pas ça...
    FRAMEBITS -> mes images ne sont pas multi-frame
    HEIGHT -> je le recupere plus tard une fois l'image chargée
    PROPERTIES -> je le recupere plus tard une fois l'image chargée
    SOMEBITS -> je ne fait pas de "scalage" de l'image
    WIDTH -> je le recupere plus tard une fois l'image chargée

    et dans les arguments de imageUpdate, il y a la meme chose :

    int infoflags,
    int x,
    int y,
    int width,
    int height)

    Alors soit j'ai rien suivi a ce que tu essaie de m'expliquer, soit certains de ses champs m'echappent....

    Merci de ton aide !
    Je crois que x,y,width,height t'indique un bloc qui vient d'être chargé, non?
    Donc (width - x) * (height - y) te donne le nb de pixels du bloc...

  8. #8
    Membre éclairé
    Avatar de buzzkaido
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2004
    Messages
    821
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

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

    Informations forums :
    Inscription : Juillet 2004
    Messages : 821
    Points : 734
    Points
    734
    Par défaut
    Et oui !

    Merci pour tout !

  9. #9
    Membre éclairé
    Avatar de buzzkaido
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2004
    Messages
    821
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

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

    Informations forums :
    Inscription : Juillet 2004
    Messages : 821
    Points : 734
    Points
    734
    Par défaut
    Tout de meme, je ne suis pas si doué !

    Comment fait-tu pour observer le chargement de l'image par le toolkit ?

    puisque toolkit.createImage ou toolkit.getImage ne prennent pas d'imageObserver en argument, je presume qu'il y a une autre methode ?

    Merci !

  10. #10
    Membre expert
    Avatar de ®om
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 815
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 815
    Points : 3 080
    Points
    3 080
    Par défaut
    Citation Envoyé par buzzkaido
    Tout de meme, je ne suis pas si doué !

    Comment fait-tu pour observer le chargement de l'image par le toolkit ?

    puisque toolkit.createImage ou toolkit.getImage ne prennent pas d'imageObserver en argument, je presume qu'il y a une autre methode ?

    Merci !
    toolkit.prepareImage

  11. #11
    Membre éclairé
    Avatar de buzzkaido
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2004
    Messages
    821
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

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

    Informations forums :
    Inscription : Juillet 2004
    Messages : 821
    Points : 734
    Points
    734
    Par défaut
    Effectivement, c'est nickel....

    Merci !

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

Discussions similaires

  1. [AJAX] Barre de progression de chargement serveur
    Par lightbulb dans le forum AJAX
    Réponses: 6
    Dernier message: 13/05/2011, 21h41
  2. Barre de progression - de chargement
    Par mitmal dans le forum ImageJ
    Réponses: 3
    Dernier message: 28/03/2011, 11h07
  3. Élminer les barres de chargement d'images ?
    Par marot_r dans le forum IHM
    Réponses: 3
    Dernier message: 02/05/2008, 23h32
  4. [Stratégie] Connaître le progression du chargement d'une image
    Par Rodrigue dans le forum Développement Web en Java
    Réponses: 6
    Dernier message: 25/10/2007, 23h22
  5. Comment faire une progression du chargement d'une image ?
    Par uranium-design dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 22/10/2006, 09h09

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