网络编程 
首页 > 网络编程 > 浏览文章

asp下生成目录树结构的类

(编辑:jimmy 日期: 2024/11/9 浏览:3 次 )

关于生成目录树结构的类

本程序有两文件test.asp 和tree.asp 还有一些图标文件

1。test.asp 调用类生成树 代码如下

<%@ Language=VBScript %> 
<html> 
<head> 
<link rel="stylesheet" href="tree.css"> 
<title>tree</title> 
</head> 
<!-- #include file="tree.asp" --> 
<% 

'======================================== 
' BUILDING A TREE PROGRAMATICALLY 
'======================================== 
' This approach would be best suited for building 
' dynamic trees using For..Next loops and such. 

Set MyTree2 = New Tree 
MyTree2.Top = 10 
MyTree2.Left = 10 
MyTree2.ExpandImage = "plus.gif" 
MyTree2.CollapseImage = "minus.gif" 
MyTree2.LeafImage = "webpage.gif" 

' Notice the indentation used to reprensent the hierarchy 
Set Node1 = MyTree2.CreateChild("script") 
Set SubNode1 = Node1.CreateChild("server") 
Set secSubNode1 = SubNode1.CreateChild("html") 
secSubNode1.CreateChild "<A HREF=""http://127.0.0.1/"">asp</A>" 
secSubNode1.CreateChild "<A HREF=""http://127.0.0.1/"">php</A>" 
secSubNode1.CreateChild "<A HREF=""http://127.0.0.1/"">jsp</A>" 

Set SubNode2 = Node1.CreateChild("os") 
SubNode2.CreateChild "<A HREF=""#"">winnt</A>" 
SubNode2.CreateChild "<A HREF=""#"">win2000</A>" 

Set Node2 = MyTree2.CreateChild("Desktop") 
Node2.CreateChild "<A HREF=""#"">Area Code Lookup</A>" 
Node2.CreateChild "<A HREF=""#"">Arin Based Whois Search</A>" 
Node2.CreateChild "<A HREF=""#"">World Time Zone Map</A>" 

MyTree2.Draw() 

Set MyTree2 = Nothing 

%> 

</BODY> 
</HTML> 

2。tree.asp 类的定义 代码如下

<% 
'****************************************************** 
' Author: Jacob Gilley 
' Email: avis7@airmail.net 
' My Terms: You can use this control in anyway you see fit 
' cause I have no means to enforce any guidelines 
' or BS that most developers think they can get 
' you to agree to by spouting out words like 
' "intellectual property" and "The Code Gods". 
' - Viva la Microsoft! 
'****************************************************** 

Dim gblTreeNodeCount:gblTreeNodeCount = 1 

Class TreeNode 

Public Value 
Public ExpandImage 
Public CollapseImage 
Public LeafImage 
Public Expanded 
Private mszName 
Private mcolChildren 
Private mbChildrenInitialized 

Public Property Get ChildCount() 
ChildCount = mcolChildren.Count 
End Property 

Private Sub Class_Initialize() 
mszName = "node" & CStr(gblTreeNodeCount) 
gblTreeNodeCount = gblTreeNodeCount + 1 

mbChildrenInitialized = False 
Expanded = False 
End Sub 

Private Sub Class_Terminate() 
If mbChildrenInitialized And IsObject(mcolChildren) Then 
mcolChildren.RemoveAll() 
Set mcolChildren = Nothing 
End If 
End Sub 

Private Sub InitChildList() 
Set mcolChildren = Server.CreateObject("Scripting.Dictionary") 
mbChildrenInitialized = True 
End Sub 

Private Sub LoadState() 
If Request(mszName) = "1" Or Request("togglenode") = mszName Then 
Expanded = True 
End If 
End Sub 

Public Function CreateChild(szValue) 

If Not mbChildrenInitialized Then InitChildList() 

Set CreateChild = New TreeNode 
CreateChild.Value = szValue 
CreateChild.ExpandImage = ExpandImage 
CreateChild.CollapseImage = CollapseImage 
CreateChild.LeafImage = LeafImage 

mcolChildren.Add mcolChildren.Count + 1, CreateChild 

End Function 

Public Sub Draw() 

LoadState() 

Response.Write "<table border=""0"">" & vbCrLf 
Response.Write "<tr><td>" & vbCrLf 

If Expanded Then 
Response.Write "<a href=""javascript:collapseNode('" & mszName & "')""><img src="/UploadFiles/2021-04-02/">

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

上一篇:站长感慨asp编程究竟何去何从 原创
下一篇:asp下轻松实现将上传图片到数据库的代码
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。