2016-12-11 1 views
-1

Je trouve le code comme ceci sur tout le web, mais il ne semble pas fonctionner pour moi,Ajouter la propriété à contrôle utilisateur dans VB6

Private FText As String 

Public Property Get Text() As String 
    Text = FText 
    lblText.Caption = Text 
End Property 

Public Property Let Text(ByVal Value As String) 
    FText = Value 
End Property 

Permettez-moi de vous expliquer plus ce que je fais, je crée une bouton de commande et la seule partie que je suis coincé est d'obtenir la légende pour le contrôle. J'ai eu la propriété d'afficher 'Texte' et quand je tape dedans, je place la légende mais quand je lance le programme, la légende est effacée! Quel est le problème avec le code que je suis en train de faire?

Répondre

1

Je l'ai résolu!

Const m_def_Caption = "Cmd" 

'Dim m_Picture As Picture 
Dim m_Caption As String 

Private Sub UserControl_InitProperties() 
    m_Caption = m_def_Caption 
End Sub 

Private Sub UserControl_ReadProperties(PropBag As PropertyBag) 
    m_Caption = PropBag.ReadProperty("Caption", m_def_Caption) 
    lblText.Caption = m_Caption 
End Sub 

Private Sub UserControl_WriteProperties(PropBag As PropertyBag) 
    Call PropBag.WriteProperty("Caption", m_Caption, m_def_Caption) 
End Sub 

Public Property Get Caption() As String 
    Caption = m_Caption 
End Property 

Public Property Let Caption(ByVal New_Caption As String) 
    m_Caption = New_Caption 
    PropertyChanged "Caption" 
End Property 

Cela fonctionne, merci pour votre aide, et je suis content d'avoir pu résoudre ce problème moi-même.