none
charger une image dans un picturebox pour WinCE5 RRS feed

  • Question

  • Bjr, je fais appel à votre aide..

    En effet, j'ai un petit souci car je n'arrive pas à charger d'images dans une picturebox depuis une url.

    je précise que le projet est sous visual c# 2008, utilise le NetFramework 2.0 et sera déployé sur des appareils mobiles utilisant windows CE 5.0.

    Pour tester il faut vraiment ouvrir un projet avec ces paramètres car je sais que ca fonctionne sur un projet simple...

    Merci d'avance pour vos réponses ....

    mercredi 6 juillet 2011 15:39

Réponses


  • pictureBox1.Image = Image.FromFile(@"c:\monimage.png");

    Sous win ce ou windows mobile il n y a pas des partitions de disque comme sur desktop. ça ressemble plutot à unix en commençant par \ pour designer la racine ,et après Application Data, Databases ou My Documents ...

    Sinon, il y a la possibilité de mettre l'image dans le meme répertoire de l’exécutable et déterminer le chemin comme ça:

     

    string directoryName = System.IO.Path.GetDirectoryName(
    Assembly.GetExecutingAssembly().GetName().CodeBase);
    


     


    jeudi 7 juillet 2011 14:37

Toutes les réponses

  • Le 06/07/2011 17:39, Jean-Marie27 a écrit :
    >
    > Bjr, je fais appel à votre aide..
    >
     
    Bonjour,
     
    > En effet, j'ai un petit souci car je n'arrive pas à charger d'images
    > dans une picturebox depuis une url.
    >
    > je précise que le projet est sous visual c# 2008, utilise le
    > NetFramework 2.0 et sera déployé sur des appareils mobiles utilisant
    > windows CE 5.0.
    >
    > Pour tester il faut vraiment ouvrir un projet avec ces paramètres car
    > je sais que ca fonctionne sur un projet simple...
    >
     
    Ni la méthode Load, ni la propriété ImageLocation, ne sont disponibles
    sur le Compact Framework.
    Quel code utilisez-vous pour charger cette image ?
     

    Fred
    mercredi 6 juillet 2011 16:31
  • Bonjour,

    En fait, je voudrais utiliser les méthodes que met à disposition la bibliothèque {System.Drawing} comme

    pictureBox1.Image = Image.FromFile(@"c:\monimage.png");

     

    Mais les seules méthodes proposées par la classe image sont equals(),FromHBitmap(),et ReferenceEquals()...

     

    ________________________

     

    Jean-Marie

     

    mercredi 6 juillet 2011 17:29
  • Bonjour,
     
    Dans ce cas encore, les méthodes ne sont pas disponibles dans le Compact
    Framework.
    Dans l'aide, une icone (téléphone) représente les éléments existants
    pour le Compact Framework.
     
    Je n'ai pas programmé ce que vous voulez faire, mais je pense que cela
    passera par la récupération de l'image au moyen de System.Net.WebRequest
    et System.Net.WebResponse.GetResponseStream qui peut servir pour
    initialiser une nouvelle instance de System.Drawing.Bitmap.
     

    Fred
    jeudi 7 juillet 2011 05:03
  • Merci beaucoup de m'avoir répondu, je vous tiens au courant sur mon avancement...

    Je pense que les classes dont vous me faites part servent à récupérer des fichiers sur un serveur mais je vais m'y intéresser...

     

    _______________________________

    Cordialement Jean-Marie

    jeudi 7 juillet 2011 13:44
  • Le 07/07/2011 15:44, Jean-Marie27 a écrit :
    > Je pense que les classes dont vous me faites part servent à récupérer
    > des fichiers sur un serveur mais je vais m'y intéresser...
     
    Oui, j'étais resté sur votre requête initiale concernant une url.
    Si c'est pour lire à partir d'un fichier, un FileStream devrait faire
    l'affaire.
     

    Fred
    jeudi 7 juillet 2011 13:57

  • pictureBox1.Image = Image.FromFile(@"c:\monimage.png");

    Sous win ce ou windows mobile il n y a pas des partitions de disque comme sur desktop. ça ressemble plutot à unix en commençant par \ pour designer la racine ,et après Application Data, Databases ou My Documents ...

    Sinon, il y a la possibilité de mettre l'image dans le meme répertoire de l’exécutable et déterminer le chemin comme ça:

     

    string directoryName = System.IO.Path.GetDirectoryName(
    Assembly.GetExecutingAssembly().GetName().CodeBase);
    


     


    jeudi 7 juillet 2011 14:37
  • aaah d' accord on s'était mal compris fred...maintenant si vous me parlez de FileStream c'est que l'on a réussi à se synchroniser .Le hic c'est que comme dit Hammadi, en WinCE, c'est différend, il n'y a pas fileStream() par exemple...


    La logique du répertoire image dans le mm dossier que l'exécutable je me suis bien dit que ca marcherais plus comme ca...Thanks Hammadi, par contre pourrais tu me détailler un peu plus la méthode que tu me propose stp...?

    jeudi 7 juillet 2011 16:54
  • Ca y est j' ai enfin réussi.

    Merci de m'avoir aidé.

    Mon problème était syntaxique, en effet je notais mon arborescence comme sur windows alors qu'il fallait noté comme sous linux....Encore merci à vous...

     

    __________________________________________

    Jean-Marie

    jeudi 7 juillet 2011 19:33