我用VB做了一个Activex控件,用在网页里,但有两个参数需要传进去,怎么传和接受呢?

bygones2001 2003-09-11 04:00:17
同上
...全文
80 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
junwhj 2003-09-12
  • 打赏
  • 举报
回复
<SCRIPT Language="VBScript">
UserControl1.Mic="88888"
</SCRIPT>
sparkcn 2003-09-12
  • 打赏
  • 举报
回复
在网页中使用activex要传参数还要加上
1,Private Sub UserControl_ReadProperties(PropBag As PropertyBag)
str = PropBag.ReadProperty("Mic", "default")
UserControl_Initialize
End Sub

2,Private Sub UserControl_WriteProperties(PropBag As PropertyBag)
PropBag.WriteProperty "Mic", ls_value, "default"
End Sub

我以前做activex如果在应用程序重要不用加这两个函数
不过如果放到网页中就要加

Garfield 2003-09-12
  • 打赏
  • 举报
回复
可能是你的CLSID错了
建议你用 Microsoft ActiveX Control Pad 。
bygones2001 2003-09-12
  • 打赏
  • 举报
回复
请看看我地程序错在那?

1------------------
工程只有一个控件,里边什么都没有放,添加了一个属性Mic
源代码如下:
Dim ls_value As String
Public Property Get Mic() As Variant

End Property

Public Property Let Mic(ByVal vNewValue As Variant)
Select Case vNewValue
Case "1"
ls_value = "A"
Case "2"
ls_value = "B"
Case "3"
ls_value = "C"
End Select
MsgBox ls_value
End Property

2----------------------
网页
<HTML>
<HEAD>
<TITLE>工程1.CAB</TITLE>
</HEAD>
<BODY>
<!-- 如果这页上的任何控件需要授权,您必须
创建一个授权包文件。 运行 LPK_TOOL.EXE 来创建
要求的 LPK 文件。 LPK_TOOL.EXE 将从 ActiveX SDK 中找到,
http://www.microsoft.com/intdev/sdk/sdk.htm. 如果您有 Visual
Basic 6.0 CD, 您可以在\Tools\LPK_TOOL 目录下找到它。

下面是对象标记的例子:

<OBJECT CLASSID="clsid:5220cb21-c88d-11cf-b347-00aa00a28331">
<PARAM NAME="LPKPath" VALUE="LPKfilename.LPK">
</OBJECT>
-->

<OBJECT ID="UserControl1"
CLASSID="CLSID:FBF20466-D608-42F9-82FD-D8624226787A"
CODEBASE="工程1.CAB#version=1,0,0,0">
<PARAM NAME="Mic" VALUE="888888">
</OBJECT>
</BODY>
</HTML>

==================================
应该弹出一个Msgbox的,但是网页问是否运行可能不安全的控件后,选择是,然后什么都没有,连控件的样子都不显示。起码是个灰色的区域啊

????????
bygones2001 2003-09-12
  • 打赏
  • 举报
回复
有例子吗?
Public Property Let xxxxx(byval New_value as integer)
' 这个就是对属性赋值的过程, new_value 就是新给的值
' 就这样接受啊


end property
是自动接受吗
killme2008 2003-09-11
  • 打赏
  • 举报
回复
支持楼上的
zhonghuashen 2003-09-11
  • 打赏
  • 举报
回复
有没有做过applet,象它一样就行了
直接在<object> </object>中间
<param name="属性" value="值">
kmzs 2003-09-11
  • 打赏
  • 举报
回复
比如有事件 _click(a as long,b as string)
kongjian_click(123,"456")
Garfield 2003-09-11
  • 打赏
  • 举报
回复
ActiveX控件,你添加了属性后一般都会有 Get 和 Let 过程。

Public Property Let xxxxx(byval New_value as integer)
' 这个就是对属性赋值的过程, new_value 就是新给的值
' 就这样接受啊


end property
bygones2001 2003-09-11
  • 打赏
  • 举报
回复
我是说在控件内怎么接受(VB程序里)
Garfield 2003-09-11
  • 打赏
  • 举报
回复
接受就是属性的Set过程。

传,你可以用 Javascript, VBScript,配合 object的id属性.
例如 <object id=myWMP classid=……>

<script language="javascript">
myWMP.Attribute = Value
</script>

或者直接在<object> </object>中间用
<param name="属性" value="值">
射天狼 2003-09-11
  • 打赏
  • 举报
回复
添加两个属性,方法"工具/添加过程/属性"

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧