3/5 (9 avis)
Snippet vu 12 777 fois - Téléchargée 39 fois
Public Function OuvrirBMP(Fichier As String, pBox As PictureBox, Optional ErrAvertir As Boolean = False) As Boolean Dim Contenu() As Byte, Longueur As Long Dim a As Long Dim fFile As Long Dim X As Long, Y As Long Dim iWidth As Long, iHeight As Long Dim pHDC As Long fFile = FreeFile pBox.Cls Longueur = FileLen(Fichier) ReDim Contenu(1 To Longueur) 'On ouvre le fichier pour le mettre dans un tableau Open Fichier For Binary Access Read As #fFile Get #fFile, 1, Contenu Close #fFile X = 0: Y = 0 a = Contenu(11) + 1 'On détermine la longueur de l'entête grâce au fichier 'Déterminer les dimentions de l'image iHeight = (Contenu(24) * 256) + Contenu(23) iWidth = (Contenu(20) * 256) + Contenu(19) If Int((Longueur - a + 1) / (iHeight * iWidth)) <> 3 Then If ErrAvertir = True Then MsgBox "Seul les images 24 bits sont acceptées", vbCritical OuvrirBMP = False Exit Function End If pBox.Width = iWidth 'iWidth pBox.Height = iHeight 'iHeight 'pHDC = GetDC(pBox.hwnd) Do While (a <= Longueur) pBox.PSet (X, iHeight - Y - 1), RGB(Contenu(a + 2), Contenu(a + 1), Contenu(a)) 'SetPixel pHDC, X, iHeight - Y - 1, RGB(Contenu(a + 2), Contenu(a + 1), Contenu(a)) X = X + 1 If X = iWidth Then X = 0: Y = Y + 1 a = a + 3 Loop OuvrirBMP = True End Function
26 oct. 2005 à 22:45
bien jouer ;)
25 déc. 2004 à 03:31
24 déc. 2004 à 21:43
24 déc. 2004 à 21:40
Et pour pset, il y avait la fonction SetPixel que j'utilisait avant qui elle va au moins 3 fois plus vite que PSet, mais je n'arrives plus à m'en servir, je sais pas s'il y a un truc que j'ai oublier ou c'est dû à WinXP ?
@+
24 déc. 2004 à 13:55
Ma source:
http://www.vbfrance.com/code.aspx?ID=25235
Et celle du format Wav:
http://www.vbfrance.com/code.aspx?ID=24461
J'espere que sa t'interressera.
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.