Pblm avec fichier ressources RESX!

Signaler
Messages postés
25
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
27 juillet 2005
-
Messages postés
25
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
27 juillet 2005
-
voila je crée une espèce de vis sans fin dynamique à partir d'une image fixe que je décale 11 fois pour revenir à sa position initiale.
Bref un timer gère ca en changeant tout les ticks d'horloge réglé à 200ms l'image demon pictureBox!
Bref ca donne un effet "vivant" à mon pop up d'attente.

Ces 11 images (bmp) je l'ai ai rajouté via RESEDITOR dans le fichier RESX de mon source.
add pict1.bmp ,add pict2.bmp ,add pict3.bmp ,etc
puis apres je renseigne chaque pict avec l'image qui se trouev sur mon dur.

Dans mon source, j'initialise l'image de mon pictureBox à la 1er image puis on tourne en boucle en applant les autres via le timer...

Ca marche très bien!!

Le problème est que si je modifie mon source, par example je chnage la valeur du timer, ben lorsque je recompile et relance l'appli ca marche plus!!!!
Plus d'images dans le fichier RESX!
je dois tout recommencé l'initialisation!
bref ca marche tt que je touche pas au source!sinon le RESX perd tout ce ke je lui ai rentré en terme d'images.

Avez vous un explixation et même mieux une soluce pour éviter cela.
Peut etre ajouter mes images via le RESEDITOR n'est pas la bonen soluce?!

MERCI à vous et @ tres vite
jf

9 réponses

Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
50
J'avais ce problème avec la beta1 de visual C# express.

Mais c'etait au niveau du designer que ca disparaissait, pas du resx.

La je trouve ca bizarre. Tu utilises quel IDE ?

Mx
Messages postés
25
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
27 juillet 2005

ide?

c'est quoi?

je bosse sur visual studio avec le framework 1.1 il me semble.
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
50
Ton IDE c'est donc Visual Studio (2003 je pense).

Je sais pas du tout ce qui peut poser ce probleme :/


Mx
Messages postés
25
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
27 juillet 2005

tt pis merci.
et pas d'autre soluce pour afficher mes images?
les mettres direct dans le dossier et indiquer le chemin complet ds mon code c possible?

mais si je me sert de la dll ds un autre projet...les images sont incluse comment?elle sont ds la dll?
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
50
Oui oui, tu peux tout a fait les charger en indiquant le chemin de l'image

Bitmap bmp = new Bitmap("chemin de ton image);

Sinon, si tes
images ne sont pas incluses dans un fichier resources, elles ne seront
pas dans la dll, tu devras les "livrer" avec.



Mx
Messages postés
25
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
27 juillet 2005

ok encore merci
Messages postés
25
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
27 juillet 2005

dis je souhaite joindre mes fichier avec la dll.
mais pour le source indiquer que les images sont directement ds le dossier de la dll, cad le rep courant je fais comment?
pictureBox1.image ??? ; avec ???chemin de l'image.

j'ai essayé aussi comme tu m'as dit et voici mon source:
private void timer1_Tick(object sender, System.EventArgs e)
{
Bitmap bmp1 = new Bitmap("pict1.bmp");// les pict sont avec la dll ds le meme repertoire
Bitmap bmp2 = new Bitmap("pict2.bmp");
Bitmap bmp3 = new Bitmap("pict3.bmp");
Bitmap bmp4 = new Bitmap("pict4.bmp");
Bitmap bmp5 = new Bitmap("pict5.bmp");
Bitmap bmp6 = new Bitmap("pict6.bmp");
Bitmap bmp7 = new Bitmap("pict7.bmp");
Bitmap bmp8 = new Bitmap("pict8.bmp");
Bitmap bmp9 = new Bitmap("pict9.bmp");
Bitmap bmp10 = new Bitmap("pict10.bmp");
Bitmap bmp11 = new Bitmap("pict11.bmp");

switch (nbrImage)
{



case 0: pictureBox1.Image = (bmp1); break;
case 1: pictureBox1.Image = (bmp2); break;
case 2: pictureBox1.Image = (bmp3); break;
case 3: pictureBox1.Image = (bmp4); break;
case 4: pictureBox1.Image = (bmp5); break;
case 5: pictureBox1.Image = (bmp6); break;
case 6: pictureBox1.Image = (bmp7); break;
case 7: pictureBox1.Image = (bmp8); break;
case 8: pictureBox1.Image = (bmp9); break;
case 9: pictureBox1.Image = (bmp10); break;
case 10: pictureBox1.Image = (bmp11); break;

}

pictureBox1.Refresh();
nbrImage++;
if (nbrImage >10)
{
nbrImage = 0;
} if (lb 0 | lb 1 | lb == 2)
{
label1.Text = "Chargement en cours...veuillez patienter";
lb++;
}
else
{
label1.Text="";
lb=0;
}
}

mais j'ai une exeption non gérée qui se lève!bref ca merdois!t'as une idée?
thx
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
50
Ta façon de procéder est la bonne.

Donc je ne pense pas que ce soit ca qui génere l'exception non gerée
(d'ailleurs, cela leverait une erreur de type FileNotFoundException
s'il ne trouvait pas les images).

Tu as pas plus d'informations que l'exception non gérée ? (n° de ligne, ou autre ? )

Mx
Messages postés
25
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
27 juillet 2005

bah non...suis revenu à ma première idée qui est d'utilisé le RESX....mais bon je laisse l'editeur ouvert pour réenregistrer a chaque fois...;( pas génial!