begin process at 2012 02 14 13:38:47
  Trouver un code source :
 
dans
 
Accueil > Forum > 

VB.NET et VB 2005

 > 

Multimédia

 > 

Image & Vidéo

 > 

[.net 2005] Gif à fond transparent


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

[.net 2005] Gif à fond transparent

jeudi 25 mai 2006 à 11:13:23 | [.net 2005] Gif à fond transparent

sousoulebarbu

Bonjour,
Je cherche une façon d'afficher une image gif ou png ayant un fond transparent au dessu d'une autre image pour qu'à la place de la transparence de la première, on voit la deuxième.
J'ai déja cherché et essayé plusieurs techniques mais sans résultat:
-mettre le backgroundcolor à transparent
-...
Quelqu'un aurait une idée?
jeudi 25 mai 2006 à 17:06:08 | Re : [.net 2005] Gif à fond transparent

alicvb

Bonjour,

Une idée, c'est sûr, mais elle est un peu plus complexe :
Tu peux "dessiner" ton image png sur ton image de fond. Je m'explique :
1- Utilise un Panel au lieu du PictureBox
2- Charge tes deux images (IM1 et IM2)
3- Dans l'évennement Paint du Panel, écrit le code suivant :

'dessin de l'image de fond :
e.graphics.drawimage(im1,.....)
'dessin de l'image transparente
e.graphics.drawimage(im2,.....)

Je n'ai pas fini l'appel aux fonction Drawimage car il y a plein de possibilités, suivant si tu veux étirer l'image, etc... si tu as du mal à coder cette partie, reposte un message.

Est-ce que cela résoud ton problème ?
AlicVB


jeudi 25 mai 2006 à 18:03:13 | Re : [.net 2005] Gif à fond transparent

sousoulebarbu

Génial!!! Merci beaucoup, c'est nikel
jeudi 25 mai 2006 à 18:30:35 | Re : [.net 2005] Gif à fond transparent

sousoulebarbu

Et juste une question, c'est possible de déplacer l'image1 et pas la 2?
jeudi 25 mai 2006 à 19:18:45 | Re : [.net 2005] Gif à fond transparent

alicvb

Bonjour,

Qu'entends-tu par déplacer ?
Si c'est ce que je pense, tu peux le faire avec une technique de ce style :
Défini deux variables X et Y à la racine de ta form.
Ce sera la position de ta deuxième image.
Lors des évennements que tu veux (clic de souris, touche de déplacement, ...) tu fait varier ces valeurs
Au moment de ton drawimage, tu peux définir à quel endroit l'afficher. Tu utilises donc là les valeurs X et Y

Ceci reste théorique. Si tu as du mal à le coder, reposte un message, je tacherai de te donner un exemple pratique.

Cela répond à ta question ?
AlicVB

PS : si c'est ça que tu cherches, n'oublie pas la case "réponse acceptée"
jeudi 25 mai 2006 à 20:19:48 | Re : [.net 2005] Gif à fond transparent

sousoulebarbu

Le problème c'est que je ne comprend pas quand est-ce que l'évènement Paint est appelé, tu peux m'éclairer stp.
En prtaique, je suis en train de créer un composant Bar de volume qui ressemblera à ça
Lorsqu'un bouton est appuié, on pe déplacer le truc orange en forme d'olive qu'est au milieu de tout à gauche à tout à droite; à gauche de l'olive c'est orange et à droite c'est gris.
Une idée pour résoudre mon problème?
jeudi 25 mai 2006 à 20:57:02 | Re : [.net 2005] Gif à fond transparent

sousoulebarbu

Je viens de trouver comment faire, seulement le problème c'est qu'on voit l'olive clignoter très rapidement lorsque je la déplace. Quelqu'un aurait une idée pour régler ça.
Voila mon code simplifié:
    Public pos As Integer
    Private Sub UserControl1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        pos = 10
    End Sub

    Private Sub Panel1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Panel1.MouseMove
        If e.Button <> Windows.Forms.MouseButtons.None Then
            pos = e.Location.X
            Panel1.Refresh()
        End If
    End Sub

    Private Sub Panel1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Panel1.Paint
        'dessin de l'image transparente
        e.Graphics.DrawImage(bar.Images.Item(0), pos, 1)
    End Sub

vendredi 26 mai 2006 à 11:26:26 | Re : [.net 2005] Gif à fond transparent

alicvb

Bonjour,

Pour ton problème de Clignotement, c'est un grand classique et récurent. Pour l'éviter, il faut utiliser un double buffer. Deux solutions (à ma connaissance) pour cela :
- La plus simple : positionner la valeur DoubleBuffer de ta form (ou de ton UserControl) à True. Je pense que cela devrait suffire vu la taille de tes images.
-L'autre est plus compliquée. Je l'ai utilisé pour la source : http://www.vbfrance.com/codes/AFFICHAGE-PLEIN-ECRAN-FLUIDE-PHOTOS-AVEC-ZOOM-DEPLACEMENTS_36676.aspx
Ici, il s'agit de déplacer des photos, et la méthode 1 ne suffisait pas.

J'espère que ça résoud ton problème. Tiens moi au courant.

AlicVB
vendredi 26 mai 2006 à 18:55:55 | Re : [.net 2005] Gif à fond transparent

sousoulebarbu

Chez moi ça ne change absoluement rien ta première technique et je t'avoue que je ne comprend pas vraiment le code source de la deuxième. Tu pourrais m'expliquer ce que je doit mettre dans ma source pk j'avoue que l'histoir du double buffer me dépasse un peu...


Cette discussion est classée dans : net, image, fond, transparent, gif


Répondre à ce message

Sujets en rapport avec ce message

paintpicture gif transparent ? [ par athlon64 ] Bonjour,Voici mon problème. il faudait que je copie une image gif au fond transparent qui se trouve dans une "imagebox" dans une picturebox qui contie Click sur une image à fond transparent [ par Djad666 ] Bonjour,Je voudrais savoir si on pouvait savoir si quand une personne a clické sur une image transparent, si on peut savoir si elle a clické sur l'ima listbox: image de fond ou fond transparent ? [ par jx53 ] salut a toute et a tous! j'aimerais savoir si l'un d'entre vous sais comment mettre une image comme fond a un listbox ou mettre son fond transparent p Problème coté graphique d'une image [ par Many_hack ] BOnjour, j'ai une question très simple LoL ! J'était sur Vb6 voilà pas si longtemps, quand je désirai mettre une image transparente sur une fo Lenteur d'affichage windows form (.Net) [ par olixelle ] Bonjour tout le monde :)Je développe un média center en .Net.Chaque écran de mon applicaiton est un user control (musique, vidéo ...)Chaque écran poss Picturebox transparent ? [ par Duke49 ] Bonsoir ! Etrange: Lorsque je créer un contrôle picturebox il prend la même couleur de fond que ma form. Objectif: J'ai 2 picturebox, 1 grand 400x10 fond transparent superposé sur une image [ par lolo ] je voudrais rendre transparent le fond d'un DataCombo que j'ai mis sur une image, pourriez vous me donner la procédure.Merci pour mettre une image avec fond transparent [ par krater ] Voila mon probleme, j'ai une image en fond et je voudrais en ajouté une autre pardessus.Or ma seconde image est ronde donc le fond "carré" est transpa fond transparent des GIF ou ICO [ par debilzpsy4 ] Salut^^J'aimerais savoir comment on peut préserver la transparence du fond d'un .GIF ou d'un .ICO dans certaines applications.Par exemple sous access2 Fond d'image transparent [ par Monico9385 ] Bonjour tout le monde, je programme un logiciel ss VB6, et j'ai le pb suivant.Je voudrait mettre une image au dessu d'une autre, et que l'image qui es


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,917 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales