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 :

Changer la résolution d'une Image en arriere plan


Sujet :

Windows Forms

  1. #1
    Membre régulier

    Inscrit en
    Février 2009
    Messages
    106
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 106
    Points : 71
    Points
    71
    Billets dans le blog
    1
    Par défaut Changer la résolution d'une Image en arriere plan
    Bonjour a tous.
    Bon je débute en C# 2008 et mon problème est le suivant:
    j'ai une application que j'aimerai changer son fond par des images grâce a un menu.
    j'initialise l'image par une commande lors du chargement de l'application comme suis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Bitmap b_motif1 = (Bitmap)Image.FromFile("img/1.jpg");
    this.BackgroundImage = b_motif1;
    et ça marche très bien.
    le soucie c'est que mon image se duplique sur mon écran (se qui est normale vus qu'elle de taille moyenne) alors se que j'aimerai faire c'est de redimensionner cette image qu'elle sois en mode plein écran comme par exemple en VB
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    img.width=me.with
    img.height=me.height
    merci d'avance

  2. #2
    Membre confirmé Avatar de MetalGeek
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 412
    Points : 513
    Points
    513
    Par défaut
    Utilise un objet ImageBrush que tu affectes à la propriété Background. La prorpiété Stretch de ImageBrush te permets d'utiliser l'image source comme un pattern (genre papier peint web, mais avec plein de paramètres possibles), ou encore d'empêcher le redimmensionnement, etc.

  3. #3
    Membre régulier

    Inscrit en
    Février 2009
    Messages
    106
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 106
    Points : 71
    Points
    71
    Billets dans le blog
    1
    Par défaut ImageBrush
    Bon je connais pas cette objet MAIS tu ma donnée une idée c'est de poser un objet PictureBox et puis après l'initialiser; se que j'ai bien fait.
    quand je choisie l'image via le menu des propriétés a droite, et quand je met le sizeMode sur StretchImage, ça fonctionne très bien.
    Mais j'aimerai pas initialiser une image des le debut, j'aimerai plutôt le faire avec une commande comme j'ai fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    pic1.BackgroundImage = (Bitmap)Image.FromFile("img/1.jpg");
    et puis j'ajoute aussi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    pic1.Height = this.Height;
    pic1.Width = this.Width;
    Mais cette fois, l'image se duplique encore.
    cela dis que quand j'initialise mon image PictureBox via une commande, le sizeMode en StretchImage ne fonctionne pas.

    Si il y a un moyen pour remédier a ça merci d'avance.
    si ça tien pas la route,explique moi ton ImageBrush que j'ai pas trouvé dans ma palette d'objet

  4. #4
    Membre régulier

    Inscrit en
    Février 2009
    Messages
    106
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 106
    Points : 71
    Points
    71
    Billets dans le blog
    1
    Par défaut Trouvé
    Salut
    Bon j'ai trouvé la réponse .
    mon 2eme cas ne marche pas pars que j'ai pas utilisé la bonne commande.
    dois être remplacé par et en gros voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    pic1.Image = (Bitmap)Image.FromFile("img/1.jpg");
    pic1.Height = this.Height;
    pic1.Width = this.Width;
    Merci MetalGeek, tu ma montré le chemin

  5. #5
    Membre régulier

    Inscrit en
    Février 2009
    Messages
    106
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 106
    Points : 71
    Points
    71
    Billets dans le blog
    1
    Par défaut création d'un objet via le code
    Bon, mon problème a été résolus par l'intermédiaire d'une insertion directe du pictureBox.
    cette fois j'aimerai créer via le code la PictureBox se qui est le cas grâce au code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    PictureBox backimg = new PictureBox();
    backimg.Height = this.Height;
    backimg.Width = this.Width;
    backimg.Image = (Bitmap)Image.FromFile("img/1.jpg");
    this.Controls.Add(backimg);
    le problème ici c'est que mon image prend sa taille normale alors que je veux quelle sois en mode plein écran.
    j'imagine que juste la PictureBox qui s'est agrandis alors que l'image dedans est resté intacte, je pense qu'il faut ajouter un truc du genre ".Stretch" mais il semble que l'image est en mode Lecture seule, pas moyen de la modifier .
    merci d'avance

  6. #6
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344

  7. #7
    Membre confirmé Avatar de MetalGeek
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 412
    Points : 513
    Points
    513
    Par défaut
    Bon je connais pas cette objet
    Effectivement c'est de ma faute, excuse-moi : je me croyais dans le forum WPF... Désolé...

  8. #8
    Membre régulier

    Inscrit en
    Février 2009
    Messages
    106
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 106
    Points : 71
    Points
    71
    Billets dans le blog
    1
    Par défaut cool
    Merci, ça marche très bien le Stretching.
    je commence a aimer ce C#
    et ce forum aussi, la réponse est vite fait

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

Discussions similaires

  1. Changer la résolution d'une image
    Par biquet dans le forum Images
    Réponses: 2
    Dernier message: 07/07/2008, 14h29
  2. Réponses: 10
    Dernier message: 07/06/2006, 11h12
  3. mettre une image en arriere plan
    Par ricardvince dans le forum Graphisme
    Réponses: 11
    Dernier message: 23/05/2006, 10h04
  4. Comment mettre une image en arriere plan
    Par huon dans le forum Access
    Réponses: 1
    Dernier message: 13/09/2005, 16h16
  5. Centrage de texte avec une image en arriere plan
    Par MasterOfChakhaL dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 26/08/2005, 18h31

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