Rafraichir une form

Résolu
tof008 Messages postés 695 Date d'inscription jeudi 5 mai 2005 Statut Membre Dernière intervention 5 janvier 2010 - 30 mai 2005 à 11:37
cs_ITALIA Messages postés 2169 Date d'inscription vendredi 20 avril 2001 Statut Membre Dernière intervention 30 juin 2009 - 30 mai 2005 à 13:43
Voila un petit probleme tout con je pense : j'ai une form sur laquelle j'ai mis une combobox et selon l'element selectionné ds cette cbobox, differents label s'affiche. Mon probleme c'est que je n'arrive pas à rafraichir la forme apres chaque clic, du coup j'ai un bordel terrible apres avoir cliké sur 3 elements de la cbobox!!! En plus on est lundi matin et ca aide pas pour la reflexion!
Merci à ceux qui seront assez frais, pour me repondre!!! lol

14 réponses

cs_pcvesoul Messages postés 123 Date d'inscription vendredi 21 janvier 2005 Statut Membre Dernière intervention 25 juillet 2007 1
30 mai 2005 à 13:34
Appelle tes frames avec le meme nom comme cela elles seront indexées et apres il ne reste + qu'a faire un

for i=1 to frame.count: frame(i).visible=false: next
3
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
30 mai 2005 à 13:35
il faut essayer de standardiser tout ça.









Dim Table() As String

Dim n As Integer



' nombre de cas possibles

ReDim Table(4)

' pour chaque cas et pour chaque frame

' 0 caché 1 visible

Table(1) = "0101010101"

Table(2) = "0011100011"

Table(3) = "0011100011"

Table(4) = "1010110001"



Select Case Form22.cmbtype.Text

Case "Tube Plastique": n = 1

Case "Pot Plastique": n = 2

Case "etiquettes": n = 3

Case "Bouchon": n = 4

End Select



frmhaut.Visible Mid$(Table(n), 1, 1) "1"

frmdiam.Visible Mid$(Table(n), 2, 1) "1"

' etc ....


Daniel
3
cs_pcvesoul Messages postés 123 Date d'inscription vendredi 21 janvier 2005 Statut Membre Dernière intervention 25 juillet 2007 1
30 mai 2005 à 11:44
Essaie le doevents avant d'afficher les éléments.
0
tof008 Messages postés 695 Date d'inscription jeudi 5 mai 2005 Statut Membre Dernière intervention 5 janvier 2010 33
30 mai 2005 à 11:48
tu peux juste me preciser ca? Dsolé, mais g pas l'aide de vb alors je sais pas trop comment ca marche doevents....
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_ITALIA Messages postés 2169 Date d'inscription vendredi 20 avril 2001 Statut Membre Dernière intervention 30 juin 2009 9
30 mai 2005 à 11:51
Donnes ton Code

It@li@
0
cs_pcvesoul Messages postés 123 Date d'inscription vendredi 21 janvier 2005 Statut Membre Dernière intervention 25 juillet 2007 1
30 mai 2005 à 11:54
Juste la commande :

DoEvents

Rien d'autre.
0
tof008 Messages postés 695 Date d'inscription jeudi 5 mai 2005 Statut Membre Dernière intervention 5 janvier 2010 33
30 mai 2005 à 11:56
voila pour le code...

If Form22.cmbtype.Text = "Tube Plastique" Then
frmhaut.Visible = True
frmdiam.Visible = True
frmepaiss.Visible = True
frmpds.Visible = True
frmope.Visible = True
frmac.Visible = True
frmcla.Visible = True
frmfour.Visible = True
frmcoul.Visible = True
frmtxt.Visible = True

Else
If Form22.cmbtype.Text = "Pot Plastique" Then
frmhaut.Visible = True
frmepaiss.Visible = True
frmpds.Visible = True
frmmes.Visible = False
frmetan.Visible = True
frmtxt.Visible = True
frmaspect.Visible = False
frmope.Visible = True
frmac.Visible = True
frmcla.Visible = True
frmfour.Visible = True
frmcoul.Visible = True

Else
If cmbtype.Text = "etiquettes" Then
frmope.Visible = True
frmac.Visible = True
frmcla.Visible = True
frmfour.Visible = True
frmcoul.Visible = True
frmaspect.Visible = True
frmtxt.Visible = True
frmtesa.Visible = True
frmcab.Visible = True
frmrub.Visible = True
frmlong.Visible = True
Else

If cmbtype.Text = "Bouchon" Then
frmope.Visible = True
frmac.Visible = True
frmcla.Visible = True
frmfour.Visible = True
frmcoul.Visible = True
frmetan.Visible = True
frmhaut.Visible = True
frmdiam.Visible = True
frmdiaext.Visible = True
frmpds.Visible = True

End If

End If



End If
End If
0
cs_ITALIA Messages postés 2169 Date d'inscription vendredi 20 avril 2001 Statut Membre Dernière intervention 30 juin 2009 9
30 mai 2005 à 12:21
Select Case Form22.cmbtype.Text


Case "Tube Plastique"
frmhaut.Visible = True
frmdiam.Visible = True
frmepaiss.Visible = True
frmpds.Visible = True
frmope.Visible = True
frmac.Visible = True
frmcla.Visible = True
frmfour.Visible = True
frmcoul.Visible = True
frmtxt.Visible = True
DoEvents

Case "Pot Plastique"
frmhaut.Visible = True
frmepaiss.Visible = True
frmpds.Visible = True
frmmes.Visible = False
frmetan.Visible = True
frmtxt.Visible = True
frmaspect.Visible = False
frmope.Visible = True
frmac.Visible = True
frmcla.Visible = True
frmfour.Visible = True
frmcoul.Visible = True
DoEvents

Case "etiquettes"
frmope.Visible = True
frmac.Visible = True
frmcla.Visible = True
frmfour.Visible = True
frmcoul.Visible = True
frmaspect.Visible = True
frmtxt.Visible = True
frmtesa.Visible = True
frmcab.Visible = True
frmrub.Visible = True
frmlong.Visible = True
DoEvents

Case "Bouchon"
frmope.Visible = True
frmac.Visible = True
frmcla.Visible = True
frmfour.Visible = True
frmcoul.Visible = True
frmetan.Visible = True
frmhaut.Visible = True
frmdiam.Visible = True
frmdiaext.Visible = True
frmpds.Visible = True
DoEvents

End Select

It@li@
0
tof008 Messages postés 695 Date d'inscription jeudi 5 mai 2005 Statut Membre Dernière intervention 5 janvier 2010 33
30 mai 2005 à 13:00
merci pour ta solution [mailto:it@li it@li]@ , elle est bocoup mieux que mes if... Mais par contre je n'arrive toujours pas a rafraichir c'est a dire a enlever les frame qui se sont affichée lors des clics precedents... en fait ce qu'il se passe, c'est quand je selectionne un cas, les frame s'aafiche et je voudrais que si j'en selectionne un autre, les premieres frame disparraissent et les nouvelles s'affichent...
Je compte sur toi italia! Et encore merci pour ton aide
0
cs_pcvesoul Messages postés 123 Date d'inscription vendredi 21 janvier 2005 Statut Membre Dernière intervention 25 juillet 2007 1
30 mai 2005 à 13:23
regarde ton code : si une frame ne doit pas etre affichée il faut a l'inverse penser a faire un frame.visible=false
0
cs_ITALIA Messages postés 2169 Date d'inscription vendredi 20 avril 2001 Statut Membre Dernière intervention 30 juin 2009 9
30 mai 2005 à 13:26
Exactement PcVesoul....il faut préciser les frame qui doivent être invible : par un =false

It@li@
0
tof008 Messages postés 695 Date d'inscription jeudi 5 mai 2005 Statut Membre Dernière intervention 5 janvier 2010 33
30 mai 2005 à 13:31
ouais ben je vais faire ca, mais il fo savoir que g à peu prés 50 frames sur cette form, c'est pour ca que je cherchais une autre solution....parce que la je vais devoir faire 20 (parce ke g 20 types differents) * 50 (pour les 50 frames) = 1000 frame.visible = false!!!!
Je vous remercie pour votre aide!!!
0
tof008 Messages postés 695 Date d'inscription jeudi 5 mai 2005 Statut Membre Dernière intervention 5 janvier 2010 33
30 mai 2005 à 13:43
merci à vous pour cette aide precieuse!!!
0
cs_ITALIA Messages postés 2169 Date d'inscription vendredi 20 avril 2001 Statut Membre Dernière intervention 30 juin 2009 9
30 mai 2005 à 13:43
Gobillot...le Pauv Chti Gar y debute.....en VB
va pas l'assommer tout de suite

It@li@
0
Rejoignez-nous