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

Windows Forms Discussion :

[VB.NET] PictureBox et Compact Framework [FAQ]


Sujet :

Windows Forms

  1. #1
    Membre habitué
    Inscrit en
    Avril 2003
    Messages
    298
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 298
    Points : 156
    Points
    156
    Par défaut [VB.NET] PictureBox et Compact Framework
    Salut,

    Sous VB.net framework, ca fonctionne à merveille mais sous VB.net COMPACT Framework, ca ne fonctionne pas:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PictureBox.Image = Image.FromFile ("c:\directory\monimage.bmp")
    Pour le compact framework, il me dit que la méthode fromfile n'existe pas pour l'objet image....

    J'ai essayé ceci mais également sans succès:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PictureBox.Image = new Bitmap("c:\directory\monimage.bmp")
    Quelqu'un peut m'expliquer comment changer mon image au runtime?

    D'avance merci

  2. #2
    Membre expérimenté
    Avatar de freddyboy
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2003
    Messages
    810
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Novembre 2003
    Messages : 810
    Points : 1 696
    Points
    1 696
    Par défaut
    oui la fonction Image.FromFile n'est pas supporte par le compact framework.
    par contre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    PictureBox.Image = new Bitmap("c:\directory\monimage.bmp")
    cela doit fonctionné si le fichier est sur ton pda (donc ton chemin n'est pas bon la).

    @+

  3. #3
    Membre expérimenté
    Avatar de freddyboy
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2003
    Messages
    810
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Novembre 2003
    Messages : 810
    Points : 1 696
    Points
    1 696
    Par défaut
    par contre tu utilise peut etre un emulateur. alors voici la methode de chez msdn pour utiliser un fichier de ton disque depuis l'emulateur.
    How do I copy files to the emulator?
    One approach would be to create a file share on your development PC, and then connect to that share via File Explorer in the emulator. You may then copy and paste the files from the share to the emulator's local file system. Another approach would be to add the file(s) to a smart device project and set their Build Action(s) property to "Content". See the Visual Studio .NET online documentation for more information on File Properties.

    Step by step instructions for adding a "Content" file to a smart device project:

    Open or create a smart device project,

    On the View menu, click Solution Explorer,

    In Solution Explorer, right-click on your project, point to Add, and click Add Existing Item. Browse to and add the desired file to the project.

    Right-click on the file that you added, in solution explorer, and click Properties,

    Set the Build Action property to "Content", if it is not already set.
    @+

  4. #4
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    A l'occasion, faudrait rajouter cette astuce dans la FAQ freddyboy

  5. #5
    Membre habitué
    Inscrit en
    Avril 2003
    Messages
    298
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 298
    Points : 156
    Points
    156
    Par défaut
    Oui dans la F.A.Q. !!!!

    Ca fonctionne à partir du moment ou l'on connait le chemin correct...
    Pour cela, j'ai une utiliser une méthode que je posterai demain (équivalent de ap.path non supporté par ce compact framework)

    A présent j'affiche une image différente selon que mon pocket PC est connecté à un réseau, connecté via le craddle ou tout simplement déconnecté.

    Encore merci pour les infos !

  6. #6
    Membre expérimenté
    Avatar de freddyboy
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2003
    Messages
    810
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Novembre 2003
    Messages : 810
    Points : 1 696
    Points
    1 696
    Par défaut
    Ok Morpheus, je prends note pour la FAQ. En ce moment je suis pas tres actif because beaucoup de taf. Mais j'ai encore 2/3 Q/R sous le coude. Je m'occupe de ca dès que j'ai 2 minutes.

    @+

  7. #7
    Membre habitué
    Inscrit en
    Avril 2003
    Messages
    298
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 298
    Points : 156
    Points
    156
    Par défaut
    Je te donne le code que j'ai finalement utilise pour faire mon indicateur de status pour la connection reseau.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    Private Sub Timer_connected_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer_connected.Tick
            If thread Then 'varaible globale pour eviter la superposition de timers (multithreading)
                thread = False
                Dim localEndPoint As New IPEndPoint(Dns.Resolve(Dns.GetHostName()).AddressList(0), 0)
                Dim img_status As System.Drawing.Bitmap
                Select Case localEndPoint.Address.ToString
                    Case "127.0.0.1"
                        Lbl_status.Text = "OffLine"
                        img_status = New Bitmap(GetAppPath() & "/disconnected.bmp")
                        Picture_status.Image = CType(img_status, Image)
                    Case "192.168.55.101"
                        Lbl_status.Text = "Craddled"
                        img_status = New Bitmap(GetAppPath() & "/craddled.bmp")
                        Picture_status.Image = CType(img_status, Image)
                    Case Else
                        Lbl_status.Text = "OnLine"
                        img_status = New Bitmap(GetAppPath() & "/connected.bmp")
                        Picture_status.Image = CType(img_status, Image)
                End Select
                thread = True
            End If
        End Sub
    Et dans un module:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Public Function GetAppPath() As String
            Return System.IO.Path.GetDirectoryName( _
                System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase)
        End Function
    Voila, j'espere que ca aidera quelqu'un... Si vous avez des remarques pour ameliorer ou preciser cette methode, n'hesitez pas.
    En fait, pour aller plus loin dans ce projet, est-ce que quelqu'un sait s'il serait possible de determiner la puissance du reseau wireless a un moment donne?
    Comme cela, je pourrais par exemple passer en mode deconnecte des que le reseau est a moins de xx Db par exemple.

    Encore merci pour vos infos.

Discussions similaires

  1. Compact Framework .NET sous Delphi
    Par Laurent Dardenne dans le forum Delphi .NET
    Réponses: 3
    Dernier message: 29/05/2008, 18h10
  2. pb compact framework .NET : format BITMAP
    Par Guntreg dans le forum C#
    Réponses: 1
    Dernier message: 06/09/2007, 17h42
  3. Réponses: 2
    Dernier message: 19/01/2007, 22h54
  4. turbo delphi .net et Compact Framework
    Par morind79 dans le forum Delphi .NET
    Réponses: 1
    Dernier message: 17/09/2006, 17h53
  5. .NET Compact Framework et BDD ?
    Par gilou85 dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 23/02/2005, 14h26

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