Prolbleme avec vbmodal

Résolu
Doguez Messages postés 15 Date d'inscription mardi 30 mars 2010 Statut Membre Dernière intervention 22 avril 2010 - 22 avril 2010 à 10:54
daffy17 Messages postés 106 Date d'inscription mercredi 18 mai 2005 Statut Membre Dernière intervention 22 avril 2010 - 22 avril 2010 à 16:13
bonjour

Voila je voudrais enlever vbmodal de mon programme cependant il est suivi de plein de enable et du coup il me faudrai un moyen de les remplacer!!!???
merci de m'aider avec vos idées!!!

Doguez

12 réponses

daffy17 Messages postés 106 Date d'inscription mercredi 18 mai 2005 Statut Membre Dernière intervention 22 avril 2010
22 avril 2010 à 15:38
Préfixe tout les objets que tu "enable" ou "disable" par l'objet parents.
Car par défaut si tu fait un "Label1.Enabled False", pour VBE, cela correspond à faire "MonFormAfficher.Label1.Enabled False"
Donc préfixe avec le nom du form qui contient tout les objets que tu veux masquer ou afficher.
("FOChamp" il me semblerait).

Rappel :
With FOchamp
    .COAI.Enabled = False
End With

Reviens à faire
FOchamp.COAI.Enabled = False

Cela évite juste de préfixé tout tes objets avec le nom du form mais juste de préfixé avec un "."


Private Sub BTajouter_Click()
'FOchamp.Show vbModal

Call CodeRefresh
End Sub

Private Sub CheckControl()
    With FOchamp
        If COliste.ListIndex > 0 Or Len(COvaleur) > 0 Then
            .COAI.Enabled = False
            .COlg.Enabled = False
            .Label1.Enabled = False
            .Label2.Enabled = False
            .Option1.Enabled = False
            .Option2.Enabled = False
            .Check1.Enabled = False
            .Check2.Enabled = False
        Else
            .COAI.Enabled = True
            .COlg.Enabled = True
            .Label1.Enabled = True
            .Label2.Enabled = True
            .Option1.Enabled = True
            .Option2.Enabled = True
            .Check1.Enabled = True
            .Check2.Enabled = True
        End If
        If Len(COAI) > 0 And Len(COlg) > 0 Then
            .COvaleur.Enabled = True
            .Label3.Enabled = True
            .COvaleur.MaxLength = Val(COlg)
        Else
            .COvaleur.Enabled = False
            .Label3.Enabled = False
        End If
        If (Option2.Value True And Len(COvaleur) > 0) Or (Option1.Value True And Len(COvaleur) = Val(COlg)) Then
            .BToui.Enabled = True
        Else
            .BToui.Enabled = False
        End If
    End With
End Sub
3
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
22 avril 2010 à 11:11
Salut,

Avec aussi peu de détails, on ne peux pas faire grand chose pour toi.

Montre nous ton code...
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
0
Doguez Messages postés 15 Date d'inscription mardi 30 mars 2010 Statut Membre Dernière intervention 22 avril 2010
22 avril 2010 à 11:46
Private Sub BTajouter_Click()
'FOchamp.Show vbModal

Call CodeRefresh
End Sub

Private Sub CheckControl()
If COliste.ListIndex > 0 Or Len(COvaleur) > 0 Then
COAI.Enabled = False
COlg.Enabled = False
Label1.Enabled = False
Label2.Enabled = False
Option1.Enabled = False
Option2.Enabled = False
Check1.Enabled = False
Check2.Enabled = False
Else
COAI.Enabled = True
COlg.Enabled = True
Label1.Enabled = True
Label2.Enabled = True
Option1.Enabled = True
Option2.Enabled = True
Check1.Enabled = True
Check2.Enabled = True
End If
If Len(COAI) > 0 And Len(COlg) > 0 Then
COvaleur.Enabled = True
Label3.Enabled = True
COvaleur.MaxLength = Val(COlg)
Else
COvaleur.Enabled = False
Label3.Enabled = False
End If
If (Option2.Value True And Len(COvaleur) > 0) Or (Option1.Value True And Len(COvaleur) = Val(COlg)) Then
BToui.Enabled = True
Else
BToui.Enabled = False
End If
End Sub


Voici une partie de mon code et en fait j'ai supprimer les vbmodale cependant les enabled provoque des problème dans mon programme et je ne vois pas par quoi les remplacer??
j'espère avoir étais plus clair!!!!
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
22 avril 2010 à 11:50
Salut,

provoque des problème dans mon programme


Il faut que tu sois plus précis pour qu'on puisse t'aider : quel genre de problème ?

Je vois mal en quoi le fait d'activer ou de désactiver des contrôles peuvent provoquer des bugs...

C'est à toi d'être précis dans tes questions, pas à nous de t'en poser pour comprendre ton problème...
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
0

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

Posez votre question
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
22 avril 2010 à 12:10
Si tu ne veux pas de vbModal, utilise vbModeless
Tout est expliqué dans l'aide de la fonction .Show
0
Doguez Messages postés 15 Date d'inscription mardi 30 mars 2010 Statut Membre Dernière intervention 22 avril 2010
22 avril 2010 à 13:17
en fait c'est .show que je ne souhaite pas utiliser c'est ça plutot!!
les problèmes c'est que le fait d'enlever .show donc vbmodal me fait disparaitre un partie de mon code!!!
j'espère être plus précis!
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
22 avril 2010 à 13:30
Salut,

Toujours pas plus précis :
me fait disparaitre un partie de mon code


Qu'est-ce que tu veux dire par là ??? Quel est le comportement que tu attends, et qu'est-ce qui se produit à la place ?
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
0
Doguez Messages postés 15 Date d'inscription mardi 30 mars 2010 Statut Membre Dernière intervention 22 avril 2010
22 avril 2010 à 13:34
désolé j'ai du mal à être précis à chaque fois dans mes explications.
alors je souhaiterait faire apparaitre mon code barre en entier cependant lorsque j'enlève le .show cela provoque la disparition de la fin de mon code, il n'est pas traduit comme le reste du code!!!
je suppose que cela provienne du fait que j'enléve le .show et qu'il reste la présence de enabled!!!
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
22 avril 2010 à 13:36
Salut,

Ben tout dépend de ce que fait ton code... Montre nous le code de ta fonction CodeRefresh déjà.
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
0
Doguez Messages postés 15 Date d'inscription mardi 30 mars 2010 Statut Membre Dernière intervention 22 avril 2010
22 avril 2010 à 16:04
merci à tous pour votre aide et plus particulièrement à daffy qui ma permis de résoudre mon problème, sinon j'avais trouvé le moyen de dériver le truc afin que ça ne me bloque pas dans mon programme en rajoutant une ligne "bidon" qui du coup comme c'est la dernière ligne qui n'est pas codé cela ne me gêné plus dans le reste de mon programme!
voilà puis merci encore a vous tous!

Doguez
0
daffy17 Messages postés 106 Date d'inscription mercredi 18 mai 2005 Statut Membre Dernière intervention 22 avril 2010
22 avril 2010 à 16:11
En relisant ma réponse ma réponse je me suis aperçu que je n'avais pas préfixer tout les objets du form par un ".".
J'espère que tu as pensé à le faire sinon voici la correction.
(Nota : J'ai préfixé tout les objets cependant seul toi sais s'ils font tous parti de "FOchamp")

Private Sub BTajouter_Click()
'FOchamp.Show vbModal

Call CodeRefresh
End Sub

Private Sub CheckControl()
    With FOchamp
        If .COliste.ListIndex > 0 Or Len(.COvaleur) > 0 Then
            .COAI.Enabled = False
            .COlg.Enabled = False
            .Label1.Enabled = False
            .Label2.Enabled = False
            .Option1.Enabled = False
            .Option2.Enabled = False
            .Check1.Enabled = False
            .Check2.Enabled = False
        Else
            .COAI.Enabled = True
            .COlg.Enabled = True
            .Label1.Enabled = True
            .Label2.Enabled = True
            .Option1.Enabled = True
            .Option2.Enabled = True
            .Check1.Enabled = True
            .Check2.Enabled = True
        End If
        If Len(COAI) > 0 And Len(COlg) > 0 Then
            .COvaleur.Enabled = True
            .Label3.Enabled = True
            .COvaleur.MaxLength = Val(.COlg)
        Else
            .COvaleur.Enabled = False
            .Label3.Enabled = False
        End If
        If (.Option2.Value True And Len(.COvaleur) > 0) Or (.Option1.Value True And Len(.COvaleur) = Val(.COlg)) Then
            .BToui.Enabled = True
        Else
            .BToui.Enabled = False
        End If
    End With
End Sub
0
daffy17 Messages postés 106 Date d'inscription mercredi 18 mai 2005 Statut Membre Dernière intervention 22 avril 2010
22 avril 2010 à 16:13
Et bien j'ai envoyé ma réponse trop vite, et donc du coup encore oublié certains objet.
Je te laisse donc le soin de vérifier et de modifier par toi même.

Cordialement.
0
Rejoignez-nous