仅仅是示例代码:<HTML>
<HEAD>
<TITLE>TEST</TITLE>
<SCRIPT TYPE="text/javascript">
function doit()
{
  MyControl1.myproperty1 = text1.value;
  alert(MyControl1.myproperty1);
}
</SCRIPT>
</HEAD>
<BODY><OBJECT ID=MyControl1 NAME=MyControl1 CLASSID="..." WIDTH=X HEIGHT=X
CODEBASE="..."
>
<PARAM NAME="myproperty1" VALUE="propertyvalue1">
<PARAM NAME="myproperty2" VALUE="propertyvalue2">
</OBJECT>
<INPUT TYPE=TEXT NAME=text1>
<INPUT TYPE=BUTTON VALUE="TEST" onclick="doit()">
</BODY>
</HTML>

解决方案 »

  1.   

    VB控件中,如何设置成员属性?比如我要增加一个STRING 类型属性。谢谢!
      

  2.   

    如果你要增加一个属性 MyString,代码如下:Const DEFAULT_VALUE_MyString = "I love Visual Basic"Dim m_strMyStringHolder '成员变量Public Property Get MyString() As String
        MyString = m_strMyStringHolder
    End PropertyPublic Property Let ss(ByVal strMyString As String)
        m_strMyStringHolder = strMyString
        PropertyChanged "MyString"
    End Property然后,在相应的 Rread-/WriteProperties 里面增加对应的语句,用于属性的持久性(Persistence):'Load property values from storage
    Private Sub UserControl_ReadProperties(PropBag As PropertyBag)
        ' Syntac pattern:
        ' somevar = PropBag.ReadProperty("PropertyName", defaultvalue)
        m_strMyString = PropBag.ReadProperty("MyString", DEFAULT_VALUE_MyString)
    End Sub'Write property values to storage
    Private Sub UserControl_WriteProperties(PropBag As PropertyBag)
        Call PropBag.WriteProperty("MyString", m_strMyString, DEFAULT_VALUE_MyString)
    End SubVB 5/6 都有 ActiveX Control Interface Wizard Addin,用它来做很轻松。
      

  3.   

    TO:EDYANG
    感谢你的帮助,不过我还有不明白的地方。我在控件中加了一个MYSTRING属性,在另一个PROJECT中给MYSTRING赋值,然后显示,结果正确。但是在主页中,我使用<param name="mystring" value="test">这种方法给控件的MYSTRING属性赋值,显示的结果为空,即赋值不成功。然后我再用你上面所讲的方法在一个按钮的处理方法中给控件的属性赋值,可以。这是为什么?