Ocx vb6

Résolu
Bonjour,

Svp, je peux savoir comment connaitre à partir d'un activex le nom de la form fans laquelle est utilisée l'activex ca veut dire si par exemple la form ou il ya l'activex s'appelle frmMain alors moi je veux un code qui permet de savoir que l'activex est dans la form frmMain.
Merci !

11 réponses

  1. Contributeur
    Bonjour,
    Il n'y a pas de commande directe pour répondre à ta question mais ont peu employer une petite astuce pour y arriver...
    Private Sub Command1_Click()
    Dim i
    Dim F As Form
        On Error Resume Next
        For Each F In Forms
            i = F.List1.Tag
            If Err = 0 Then
                MsgBox "l'OCX se trouve sur la feuille " & F.Name
                Exit Sub
            End If
            Err.Clear
        Next
    End Sub

    Bien sûr, remplacer List1 par le nom de ton contrôle.
    A+
    1
    1. Merci de ta part ca marche Nickell! :)
      0
      1. SVP je peux savoir comment faire ca a partir d'un OCX car dans mon cas c l'ocx qui dois determiner la form danslaquel il est utilisé
        0
        1. Contributeur
          Pas compris ta question !!
          0
          1. bonjour, je voulais dire que je voulais un code ou je mettrais dans le UserControl et qui va me permettre de déterminer le nom de la form dans laquelle est utilisé mon ocx . Si tu comprend pas repose moi la question ou donne moi ton msn pour qu'on puisse communiquer ! Merci !
            0
            1. Contributeur
              toujours pas compris du tout et
              UserControl c'est quoi en VB6 ?
              0
              1. usercontrol c'est la form ou on met les objets dans un activex dans vb6
                0
                1. Contributeur
                  Ah boooon... Tu est en train de FAIRE un ocx.. C'est pas ce qui ressort de tes postes précédants
                  Et tu doit connaître le nom de la feuille dans lequel il est ?
                  ca dépend où tu met le code, ça peu être...
                      Nom = Me.Parent.name

                  ou encore
                      Nom = Extender.Parent.name

                  De mémoire.. si c'est pas ça tu dis, je regarderais dans un de mes anciens projet.
                  A+
                  L'expérience instruit plus sûrement que le conseil. (André Gide)
                  Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
                  0
                  1. ca marche pa :s
                    je t'ai di que le code j'vaii l'mettre dans le usercontrol et pas dans la feuille ou il ya l'ocx
                    0
                    1. Contributeur
                      CA MARCHE PAS...

                      C'est tout ce que tu sais dire ?
                      Tu cherche même pas un tout petit peu !!!
                      J'ai vérifié et... CA MARCHE, c'est toi qui sais pas où le mettre.
                      Private Sub UserControl_ReadProperties(PropBag As PropertyBag)
                      ...... Lire les propriétés
                      Dim Nom As String
                          Nom = Extender.Parent.name
                      End Sub


                      0