begin process at 2012 02 13 15:16:46
  Trouver un code source :
 
dans
 
Accueil > Forum > 

VB.NET et VB 2005

 > 

Divers

 > 

General

 > 

Images transparente (comme un splash screen)


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

Images transparente (comme un splash screen)

jeudi 18 juin 2009 à 22:53:22 | Images transparente (comme un splash screen)

sam469

Bonsoir a toutes & a tous!!


je souhaiterai savoir comment faire réaliser un application qui rend une image transparente avec un timer

(Au début le plus transparent possible pour finir complètement opaque)


Il y a bien longtemps j'y était arriver avec VB6 mais jais perdu ma source :-(, sa doit faire maintenant 3 ans


Maintenant je suis sou VB EXPRESS 2008



Merci énormément de votre aide!!

S@m
samedi 20 juin 2009 à 15:19:27 | Re : Images transparente (comme un splash screen)

Mayzz

Membre Club
Bonjour,

Les fonctions GDI+ du framework (System.Drawing et System.Drawing.Drawing2D) gèrent les images 32bits (avec le byte de transparence), il doit donc exister une solution.

Il faudrait créer un Graphic à base de l'image, que celui-ci récupère les pixels de cette image et joue avec le byte du plan alpha. Cela ne me semble pas bien compliqué à faire, je pense qu'il doit y avoir une fonction qui doit permettre de retrouver un pixel de ton image sous forme de System.Color (donc une gestion RGB + A), il reste en suite à modifier la couleur et la réintégré à l'image.

                                                                              
Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
<

samedi 20 juin 2009 à 15:55:12 | Re : Images transparente (comme un splash screen)

Mayzz

Membre Club
Bon je me suis penché dessus, en fait même pas besoin de 'Graphics' ^^
La classe Bitmap gère le GetPixel et SetPixel, du coup c'est simple comme bonjour !

Public Function SetImageOpacity(ByVal Filename As String, ByVal Opacity As Byte) As Image
    '
    Dim _src As New Bitmap(Filename)
    Dim _ret As New Bitmap(_src.Width, _src.Height) 
    '
    Try 
        '
        For X = 0 To _src.Width - 1 
           For Y = 0 To _src.Height - 1 
              Dim c As Color = _src.GetPixel(X, Y)
              Dim nc As Color = Color.FromArgb(Opacity, c.R, c.G, c.B)
              _ret.SetPixel(X, Y, nc)
           Next 
        Next 
        '
    Catch ex As Exception 
        '
        MsgBox(ex.Message) 
        '
    End Try 
    '
    Return _ret 
    '
End Function

Bien entedue, la classe System.Drawing.Bitmap, gère plusieurs formats d'images (jpeg, gif, png etc..), ce code ne fonctionne que sur des images prenant en charge les couleurs 32bits avec plan alpha.

@+ Mayzz

                                                                              
Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
<

samedi 20 juin 2009 à 20:31:15 | Re : Images transparente (comme un splash screen)

sam469

Salut!

Merci pour ta réponce :-) je vais tester cela de suite!!!!


Merci encore ^^

je te tient au courant


A très vite!


S@m
samedi 20 juin 2009 à 20:43:24 | Re : Images transparente (comme un splash screen)

sam469

Re salut!!


En faite pour la transparence j'utilise la fonction "transparencykey", et une images du type .PNG sur la quel je  doit faire HYPER GAFFE au pixel car le "transparencyKey" ne  gère que les pixel blanc PURE!


2tant vraiment débutant en VB (sa fait 3 ans que je ny est pas toucher -_-) aurait tu un source déjà faite ??


Par ailleurs je voulait savoir comment utiliser un Timer (pour qu'il fasse apparaitre une images petit a petit en utilisant le Opacity?

(j'arrive a l'utiliser, mais disons que je doit utiliser 20 Timer :s


Merci beaucoup pour ton aide :-)

A très vite!!


S@m
samedi 20 juin 2009 à 22:09:45 | Re : Images transparente (comme un splash screen)

Mayzz

Membre Club
TransparencyKey ???

Pour quoi faire ? tu veux faire un formulaire transparent ? Tu peux utiliser les régions pour cela. Pour ce qui est du timer, la je vois pas... 20 timer (un par image ? t'as 20 images ?) pour faire quoi ?

Sois plus claire explique moi le but de ton programme sinon je ne pourrais pas t'aider...

                                                                              
Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
<

samedi 20 juin 2009 à 22:18:30 | Re : Images transparente (comme un splash screen)

sam469

Re salut!


Et bien le but de mon micro-programme c'est tous simplement un "splash screen"

Étant donner que je suis vraiment, mais vraiment novice voila mon code tous entier



Public Class Form1

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

    End Sub
    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        Me.Opacity = 0.1
        Timer2.enabled = True
        Timer1.Enabled = False
    End Sub

    Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick
        Me.Opacity = 0.2
        Timer3.Enabled = True
        Timer2.Enabled = False
    End Sub

    Private Sub Timer3_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer3.Tick
        Me.Opacity = 0.3
        Timer4.Enabled = True
        Timer3.Enabled = False
    End Sub

    Private Sub Timer4_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer4.Tick
        Me.Opacity = 0.4
        Timer5.Enabled = True
        Timer4.Enabled = False
    End Sub

    Private Sub Timer5_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer5.Tick
        Me.Opacity = 0.5
        Timer6.Enabled = True
        Timer5.Enabled = False
    End Sub

    Private Sub Timer6_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer6.Tick
        Me.Opacity = 0.6
        Timer7.Enabled = True
        Timer6.Enabled = False
    End Sub

    Private Sub Timer7_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer7.Tick
        Me.Opacity = 0.7
        Timer8.Enabled = True
        Timer7.Enabled = False
    End Sub

    Private Sub Timer8_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer8.Tick
        Me.Opacity = 0.8
        Timer9.Enabled = True
        Timer8.Enabled = False
    End Sub

    Private Sub Timer9_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer9.Tick
        Me.Opacity = 0.9
        Timer10.Enabled = True
        Timer9.Enabled = False
    End Sub

    Private Sub Timer10_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer10.Tick
        Me.Opacity = 1
        Timer11.Enabled = True
        Timer10.Enabled = False
    End Sub

    Private Sub Timer11_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer11.Tick
        Me.Opacity = 0.9
        Timer12.Enabled = True
        Timer11.Enabled = False
    End Sub

    Private Sub Timer12_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer12.Tick
        Me.Opacity = 0.8
        Timer13.Enabled = True
        Timer12.Enabled = False
    End Sub

    Private Sub Timer13_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer13.Tick
        Me.Opacity = 0.7
        Timer14.Enabled = True
        Timer13.Enabled = False
    End Sub

    Private Sub Timer14_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer14.Tick
        Me.Opacity = 0.6
        Timer15.Enabled = True
        Timer14.Enabled = False
    End Sub

    Private Sub Timer15_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer15.Tick
        Me.Opacity = 0.5
        Timer16.Enabled = True
        Timer15.Enabled = False
    End Sub

    Private Sub Timer16_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer16.Tick
        Me.Opacity = 0.4
        Timer17.Enabled = True
        Timer16.Enabled = False
    End Sub

    Private Sub Timer17_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer17.Tick
        Me.Opacity = 0.3
        Timer18.Enabled = True
        Timer17.Enabled = False
    End Sub

    Private Sub Timer18_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer18.Tick
        Me.Opacity = 0.2
        Timer19.Enabled = True
        Timer18.Enabled = False
    End Sub

    Private Sub Timer19_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer19.Tick
        Me.Opacity = 0.1
        Timer20.Enabled = True
        Timer19.Enabled = False
    End Sub

    Private Sub Timer20_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer20.Tick
        Me.Opacity = 0
        End
    End Sub



End Class



PS: non je n'est qu'une images, mais c'est pour un effet d'opaciter


Je te joint mon Projet tous entier pour que tu comprenne mieux!


http://samsi69.free.fr/VB/SPLASH.rar


Merci encore une foi :-) et désoler pour ma "novicitude"


A très vite!

S@m
samedi 20 juin 2009 à 22:41:33 | Re : Images transparente (comme un splash screen)

Mayzz

Membre Club
Réponse acceptée !
ah oué! quand meme !! lol

T'inquiète pas on est tous passé par la ^^

Bon en fait c'est simple, ne laisse qu'un timer dans ton form et colle ce code :

Private _Hide As Boolean 

Private Sub
Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
    IfNot _Hide Then
        Me.Opacity += 0.01 
        If Me.Opacity = 1 Then _Hide = True
    Else
        Me.Opacity -= 0.01
        IfMe.Opacity = 0 Then
            'Lance ici la feuille principale de ton application
            Me.Close
        End If
    End If
End Sub


Wala ;) @+

                                                                              
Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
<

samedi 20 juin 2009 à 22:42:41 | Re : Images transparente (comme un splash screen)

PCPT

Administrateur CodeS-SourceS
salut,
20 timers???

il n'y a plus de variable (à incrémenter) en vb.net ?... 
samedi 20 juin 2009 à 23:06:29 | Re : Images transparente (comme un splash screen)

Mayzz

Membre Club
Salut PCPT ;)

Comment ça plus de variable à incrémenter en .net ?

                                                                              
Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
<


1 2

Cette discussion est classée dans : images, transparente, screen, splash


Répondre à ce message

Sujets en rapport avec ce message

images avec couleur transparente dans richtextbox [ par houbahop ] Bonjour, comme le titre l'indique, je désire afficher une image (smiley) dans un composant rtf. Je sais déja faire ça mais j'aimerais pouvoir spécifie Splash screen + progression ouverture BDD [ par Danyz ] Salut ,je voudrais faire un splash screen avec un progressbar definit par le chargement de ma base au demarrage.j'ai essayé de mettre dans la boucle q Form affichée derrière la Form initiale. [ par link78180 ] Salut.Voila, je suis en train de créer un navigateur. Tout est fini, sauf mon splash screen, et là est le problème : quand j'affiche la Form du splash crée un splash screen (page d'acceuil) [ par emma16 ] je suis debutante en vb et j'aimerai bien crée un splash screnn mais je ne sais absolument pas comment fairepouvez vous m'aider ?? merci d'avance Splash Screen [ par elpens ] Bonjour,J'ai a nouveau besoin de votre aide, pour une question qui peut-être est totallement stupide...J'ai réalisé une fenetre (splash screen) qui de splash screen??? [ par matheus595959 ] bonjour je viens de creer mon splash screen , je voudrais avoir si il est possible de l'afficher admetons 2 secondes puis apres ces 2 secondes qu'il p Superposition de 2 images dont une transparente et au dans le bas de la premiere. [ par ekraadou ] En vb6 , comment peut-on supperposer deux images en rendant la seconde transparente. Par exemple J'ai une photo d'identité et je veux mettre sur le ba splash screen [ par Bzz ] bonjour, j'ai besoin de faire un splash screen, non, pas pour le fun, mais pour executer en arriere plan l'import de données dans une bd access.Pb, le splash screen [ par minibenji ] Bonjours, J'ai un petit problèmeje ne sais pas comment passez d'un splashscreen a mon applicationje suis en .netDirecteur Générale de WebPro les fichiers de type WB1... [ par jappytoutou ] Bonjour,Par je ne sais quel phénomène, dans mon fichier "WEBSHOTS DATA" certaines images se sont d'elles-même mises dans un format: le WB1, que je ne


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 : 9,017 sec (3)

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