PROGRAMME TRES LENT!

[Résolu]
Signaler
Messages postés
178
Date d'inscription
jeudi 15 mars 2007
Statut
Membre
Dernière intervention
2 janvier 2015
-
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
-
Bonjour à tous,
Voila j'avance dans mon programme, par contre je trouve qu'il n'est pas rapide g rajouté des fotos dans mon application et depuis sa ram completement je fais meme planter les pc de l'usine!  mon programme pour l'instant fait 14 MO, mon pc tourne avec 768 de RAM et un processeur pentium 4. QUAND je clique pour aller dans un environnement (userform) qui contient environ 15 photos il me met environ 20 secondes pour s'ouvir, mon prog a la base est fait pour gagner du temps pas en perdre!mes fotos font environ 300 ko en moyenne en dessous g une salle qualité, je programme sous vba excel si qqun à une solution à ce problème merci!

      TICRAIN

14 réponses

Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
pardon : corriger :
 ton_contrôle_image.picture  = LoadPicture(combobox2.Text)
bien sur
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Bonjour,

C'est principalement dû à une question d'emplacement...
un peu comme l'emplacement de ta discussion dans la section Visual Basic 6 au lieu de la section Langages dérivés/VBA ...
Ne mets pas tes images dans l'application.... Laisse-les donc dans un répertoire et ne les affiche qu'au fur et à mesure de tes besoins.
Messages postés
178
Date d'inscription
jeudi 15 mars 2007
Statut
Membre
Dernière intervention
2 janvier 2015

Tu veux dire que je ne doit pas inserer une image dans les propriétés? comment puis-je faire autrement JMFMARQUES!
merci
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Ce qui veut dire que si tes 15 images sont systématiquement chargées dès l'ouverture de ton application, ma foi... elles vont nécessairement de bouffer la mémoire qui leur est nécessaire.
Garder ces images dans un répertoire et ne les charger que lorsque nécessaire est autre chose.

Comment charger une image depuis un fichier sous VBA ? Ben çà, vois-tu, je ne le sais pas du tout (je ne connais pas VBA)
Je pourrais te répondre sous VB6 (section dans laquelle nous sommes) par contre :
Sous VB6 on utilise LoadPicture(chemin)...
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
Re [auteurdetail.aspx?ID= 1007130 ticrain,]
Idem en VBA loadpicture (salut [auteurdetail.aspx?ID=615490 jmfmarques] )

@+: =89254 Ju£i?n
Pensez: Réponse acceptée
Messages postés
178
Date d'inscription
jeudi 15 mars 2007
Statut
Membre
Dernière intervention
2 janvier 2015

En faite mes images s'affichent en fonction de ce que je choisi dans une combobox. elle apparaissent rapidement mais lorsque c'est chargé! comme tu dit elle se charge toute au debut c ce qui me fait galerer.

DOnc tu pense qu'il y'a possibilité d'afficher des images qui se trouver sur C: par exemple en fonction de se que je choisis dans la combo?merci
Messages postés
178
Date d'inscription
jeudi 15 mars 2007
Statut
Membre
Dernière intervention
2 janvier 2015

merci Jrivet!
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Oui M'sieu (comme dit)

Dans ta combo : les chemins de fichier
Au click de ta combo : ton_image = LoadPicture(le_chemin_choisi)
Messages postés
178
Date d'inscription
jeudi 15 mars 2007
Statut
Membre
Dernière intervention
2 janvier 2015

Quand tu parle de "ton_image" c bien l'image que tu dessine dans ta userform celle qui va faire apparraitre les differentes photos?si c bien ca sa ne marche pas voila ce que g ecrit:

Private Sub combobox2_click()
Select Case ComboBox2.Text
Case "EPAN"
image = LoadPicture("C:\EPAN.jpg")
End Select
End Sub

Il me met une erreur
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
pour moi, ce serait tout simplement ceci :

Private Sub  combobox2_Click()
   ton_contrôle_image.picture  = LoadPicture(Combo1.Text)
End Sub

dans la mesure où ta cobo contient des chemins d'images.....
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
Salut,
(Si le problème persiste)
"Il me met une erreur" Tu devrais commencé à savoir que nous ne sommes pas devant ton PC, MAIS que de connaitre l'erreur peut nous être très utile pour t'aider.
Si l'erreur est : Erreur d'exécution '438' : Propriété ou méthode non gérée par l'objet :  Il aurait été bien de le marquer.
Ensuite il suffit de suivre ce que te dit [auteurdetail.aspx?ID= 615490 jmfmarques], et utiliser TonControle .Picture
Si il n'y a pas .Picture => Erreur

@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
178
Date d'inscription
jeudi 15 mars 2007
Statut
Membre
Dernière intervention
2 janvier 2015

bonjour jmfmarques voici ce que g tapé:

Private Sub combobox2_click()
Select Case ComboBox2.Text
Case "EPAN"
LoadPicture ("C:\PHOTO\EPAN.jpg")
Image.Visible = True
Case "EXSA"
LoadPicture ("C:\PHOTO\EXSA.jpg")
Image.Visible = True
End Select
End Sub

Les photos se chargent bien mais ne s'affichent pas dans image, en fait g un userform, une image et deux photos à faire apparaitre à l'interieur de cette image en fonction de ce que je choisi dans le combo. Le loadpicture remplace bien le chemin que nous donnons dans les propriétés "image" celui qui me fait ramer le PC?
Merci
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
Salut,
Pourquoi ne pas simplementtesté ce que l 'on te propose?????

@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
Re,
Ou bien essaie ceci, mais au moins lit ce que l'on te marques
Private Sub combobox2_click()
Image.Image = LoadPicture("C:\PHOTO\" & combobox2.Text & ".jpg")
Image.Visible = True
End Sub<hr />, ----
[code.aspx?ID=41455 By Renfield]
On t'a marqué:
- ton_contrôle_image.picture  = LoadPicture(Chemin)
- Ensuite il suffit de suivre ce que te dit [auteurdetail.aspx?ID =615490 jmfmarques], et utiliser TonControle.Picture
Si il n'y a pas .Picture => Erreur
@+: Ju£i?n
Pensez: Réponse acceptée