System.NullReferenceException agrandir une image [Résolu]

Messages postés
12
Date d'inscription
lundi 18 juin 2007
Statut
Membre
Dernière intervention
15 juillet 2007
- - Dernière réponse : angelanddelus100
Messages postés
12
Date d'inscription
lundi 18 juin 2007
Statut
Membre
Dernière intervention
15 juillet 2007
- 13 juil. 2007 à 17:57
Bonjour à tous,


Je dois agrandir une image en 12 par 12 pixel en fois 10 par exemple de manière à visualiser des gros carré représentent mes pixels dans une picturebox. Mon programme m'indique ce message d'erreur niveau de la ligne : 


Img5.SetPixel(i, j, newcolor1)






Une exception non gérée du type 'System.NullReferenceException' s'est produite dans EDWBCStream.exe


Informations supplémentaires : La référence d'objet n'est pas définie à une instance d'un objet.

Voila mon code:

Dim Rc1
As
Integer








Dim
newcolor1

As
Color


Dim
Witdthi1

As



Integer






Dim
Heighti1

As



Integer

Witdthi1 = Img4.Width * 10 '''''Img4 (bitmap) dimension 12 par 12


Heighti1 = Img4.Height * 10


ii = -1


jj = -1







For
i = 0

To
(Witdthi1) - 1

Step
1ii = ii + 1


If
ii >= 12

Then

ii = 0







End



If






For
j = 0

To
(Heighti1) - 1

Step
1jj = jj + 1


If
jj >= 12

Then

jj = 0







End



If

uu = Img4.GetPixel(ii, jj)


Rc1 = uu.R()


newcolor1 = Color.FromArgb(Rc1, Rc1, Rc1)


Img5.SetPixel(i, j, newcolor1) ''''' Img5 déclaré en (bitmap)  mais n'excite pas avant cette ligne






Next






Next

picCurF.Image = Img5


picCurF.SizeMode = PictureBoxSizeMode.StretchImage


TestA =




False



Voila si quelqu'un pourrait me dire cette erreur est lié à img5 qui n'a pas de réference avant, si oui qu'elle est la solution pour créer une réference... Merci.
Afficher la suite 

2 réponses

Meilleure réponse
Messages postés
939
Date d'inscription
vendredi 25 octobre 2002
Statut
Membre
Dernière intervention
27 janvier 2009
1
3
Merci
tu l'as declaré comment ton img5?

Affecte lui une nouvelle instance d'image, avant d'entrer dans ta boucle et de dessiner les pixels.
Et assure toi bien sur que ses dimensions correspondent à ce que tu cherche à faire.

img5 = New Bitmap(widthi1,heighti1)

HvB a.k.a BaTo ^^x
http://chat.batto.info/ ^^'
http://batto.info/ 

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 194 internautes nous ont dit merci ce mois-ci

Commenter la réponse de hvb
Messages postés
12
Date d'inscription
lundi 18 juin 2007
Statut
Membre
Dernière intervention
15 juillet 2007
3
Merci
Merci Hvb tu m'as donné les bonnes indications et en effet j'ai du faire des petites corrections au niveau de mes dimensions que je voulais obtenir. Voila le code qui fonctionne si quelqu un est interessé un jour. Bonne journée.

Img5 =

New Bitmap(Witdthi1, Heighti1)

For

i = 0
To 11
Step 1

For j = 0
To 11
Step 1pixelColor4 = Img4.GetPixel(i, j)

Rc1 = pixelColor4.R()

newColor1 = Color.FromArgb(Rc1, Rc1, Rc1)

For ii = 10 * (i + 1) - 10
To 10 * ((i + 1)) - 1
Step 1

For jj = 10 * (j + 1) - 10
To (10 * (j + 1)) - 1
Step 1Img5.SetPixel(ii, jj, newColor1)

Next

Next

Next

NextpicCurF.Image = Img5

picCurF.SizeMode = PictureBoxSizeMode.StretchImage

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 194 internautes nous ont dit merci ce mois-ci

Commenter la réponse de angelanddelus100