Tentang kelas yang menghasilkan struktur pohon direktori
Program ini memiliki dua file test.asp, tree.asp dan beberapa file ikon
1. Kode Panggilan Tes.
<%@ Language = vbscript%> <html> <head> <link rel = "stylesheet" href = "tree.css"> <itement> pohon </itement> </adep========================================================================================================= '=========================================' Pendekatan ini akan paling cocok untuk membangun 'pohon dinamis menggunakan for..sept loop dan semacamnya. Set mytree2 = pohon baru mytree2.top = 10 mytree2.left = 10 mytree2.expandImage = "plus.gif" mytree2.collapseimage = "minus.gif" mytree2.leafimage = "webpage.gif" Node1.createChild ("server") atur secsubnode1 = subnode1.createChild ("html") secsubnode1.createChild "<a href =" "http://127.0.1/" "> asp </a>" secsubnode1.create.create.create.creatild ""> asp </a> "secsubnode1.create.create.create.creatild" "</a>" SecSubnode1.creatcild "" "" ASP </a> "" SecsubNode1.CreatCreDild "" "ASP </a>" "APSUBNODE1.CRATCRILD ".1 Href = "" http://127.0.0.1/ ""> php </a> "secsubnode1.createChild" <a href = "" http://127.0.1/ ""> jsp </a> "Set Subnode2 = node1.creatcild (" osceatcild ("osceatcild" osceatcild ("osceatcild" osceatcild (" Href = ""#""> winnt </a> "Subnode2.createChild" <a href = ""#""> win2000 </a> "set node2 = mytree2.createChild (" desktop "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" node "" "" "" "" node "" "" "" "" node "" "" "" "node" node "" "" node "" node "" node "" "node" "node" "node" "" node "" node "" "node" "node" "" "node" node Pencarian whois yang berbasis </a> "node2.createChild" <a href = ""#""> peta zona waktu dunia </a> "mytree2.draw () atur mytree2 = tidak ada % %> </body> </html>2. Kode definisi Tree.asp Class adalah sebagai berikut
<% '********************************************************' Penulis: Jacob Gilley 'Email: [email protected]' Istilah saya: Anda dapat menggunakan Kontrol ini dan Anda bisa mendapatkan kata -kata yang bisa dikeluarkan oleh Anda, "KONTLOK APA PUN UNTUK MENGUNGKAPKAN PEADILINAL APA PUNYA PEDINGGI 'ATAU BS YANG BAGAIMANA KEPALA KEPADA KONTROU" DAN KONTOK PERTANYAAN UNTUK PETUNG APA SAJA DENGAN PEDURIAN APA PUN APA PUNYA APA PUNYA APA PUNYA APA PUNYA KONTOL APA PUN. Dewa ". ' - Viva La Microsoft! '************************************************************** DIM gbltreenodecount: gbltreenodecount = 1 kelas treenode nilai publik ekspandimase publicmage publican public public public public propertycren propertycren public public propsedcren propertycren public. Properti Private Sub Class_initialize () mszname = "node" & cstr (gbltreenodecount) gbltreenodecount = gbltreenodecount + 1 mbchildreninialized = false expanded = false sub sub class_terminate () jika mbchildrenitialized dan isobjil (mcolchren) jika mcolchendren) jika mcolchenily. Jika end sub private sub initchildlist () set mcolchildren = server.createObject ("scripting.dictionary") mbchildrenInitialized = true end sub private sub loadstate () jika permintaan (mszname) = "1" atau permintaan ("TOGGLENODE") = msZname kemudian diperluas = rue publing jika end public dari public. Initchildlist () set createChild = new treenode createChild.value = szvalue createChild.ExpandImage = expandimage createChild.collapseImage = collapseimage createChild.leafimage = leafimage mcolchildren.add mcolchildren.count + 1, createChild function "public end (createClild" publice "tabel (creatcldren. vbcrlf response.write "<tr> <td>" & vbcrlf Jika diperluas maka respons.write "<a href =" "JavaScript: Collapsenode ('" & mszname & "')"> <imgwrc = "" & notingimage & "" "0"> </a> "& vbcreIf notingmage &" "" 0 "> </a>" & vbcrye. " src = "" "& LeafImage &" "" "border = 0>" & vbcrlfe response.write "<a href =" "JavaScript: expandnode ('" & mszname & "')" "> <img src =" "& evendimage &" "" "> </a>" & vbcr. "" Response.write "<td>" & value & "</td> </tr>" & vbcrlf Jika diperluas maka respons.write "<input type =" "hidden" "name =" "" & mszname & "" "value =" "1"> "& vbcrlf jika mbchildrenIalized kemudian respons." "" "" "<td>" & vbCrLf For Each ChildNode In mcolChildren.Items ChildNode.Draw() Next Response.Write "</td>" & vbCrLf Response.Write "</tr>" & vbCrLf End If End If Response.Write "</table>" & vbCrLf End Sub End Class Class Tree Public Top Public Left Public ExpandImage Public CollapseImage Public LeafImage Private mszPosition Private properti publik McOlchildren Let absolute (bdata) jika bdata maka mszposition = "absolute" else mszposition = "relatif" properti properti publik mendapatkan absolute () absolute = cbool (mszposition = "absolute") properti private sub class_initialize () set mcolchildren = server.creeute = scripion = scripiction. = "absolute" sub private sub class_terminate () mcolchildren.removeall () set mcolchildren = tidak ada fungsi akhir sub createChild (szvalue) set createChild = new treenode createChild.collapseMage = expandimage = expandImage.collapseImage = collasapeAfage = COMPLEAFICECEFAGED = ExpandImage.collapseImage = COMPERIFEADEFACE = COMPLEAFICECEADILD = ExpandImage.collapseAfImage = COMPERIFACEPEAFAGE = CUMNEAFAFEACE = CUMLOAFAFEACECEADEFAGED.COLLEAFAGEADEXEADLY. mcolchildren.add mcolchildren.count + 1, fungsi akhir createChild sub loadtemplate publik (szfileName) Dim objworkingnode dim colnodestack dim fsobj, tsobj dim szline ncurrdepth, nnextdepth set colnodestack = server.createObject ("scripeobject. CreateObject("Scripting.FileSystemObject") Set tsObj = fsObj.OpenTextFile(szFileName, 1) nCurrDepth = 0 While Not tsObj.AtEndOfLine nNextDepth = 1 szLine = tsObj.ReadLine() If nCurrDepth = 0 Then Set objWorkingNode = CreateChild(Trim(szLine)) ncurrdepth = 1 lain saat mid (szline, nnextdepth, 1) = vbtab atau mid (szline, nnextdepth, 1) = "" nnextdepth = nnextdepth + 1 wend jika nnextdepth> 1 lalu szline = trim (mid (szline, nnextdepth))) ifeTHD "ifextth (midline, nnextdepth))) ifeTHD (midline, nnextdepth))) ifeTHD (midline, nnextdepth))) ifeTH (midline, nnextdepth))) ifeTHDEPTH) ifeTHDEPTH (MIDLEPTH, MIDLEPTH, MIDLEPTH, NCOXDEPTH)) Maka jika colnodestack.exists (ncurrdepth) kemudian atur colnodestack.item (ncurrdepth) = objworkingnode lain colnodestack.add ncurrdepth, objworkingnode end jika ditetapkan objworkingnode = objworkingnode.createchild (szline) ncurrdonth = ncurreporth- ncurrd ncurrd ncurrd ncurrd ncurrd ncurrder ncurrdepth maka jika nnextdepth> 1 maka nnextdepth = nnextdepth - 1 sementara tidak colnodestack.exists (nnextdepth) dan nnextdepth> 1 nnextdepth = nnextdepth - 1 wend set objoringnode = colnodestack.item (nnextdepth (noNextDH) odjworkingnode = colnodestack.item (nomex objworkingnode.createChild (szline) nnextdepth = nnextdepth + 1 lain mengatur objworkingnode = createChild (szline) end jika ncurrdepth = nnextdepth end jika ada akhir jika wend tsobj.close () atur tsobj = tidak ada yang ditetapkan fsobj = no colnoDack. Sub draw () addClientScript () response.write "<div id =" "treectrl" "style =" "left:" & left & "px; TOP: "& TOP &" PX; Posisi: "& mszposition &"; ""> "& vbcrlf response.write" <form name = "" treectrlfrm "" action = "" "& request.servariables (" script_name ") &" "Method =" "get"> "& vbcrlf response.write" <table0 ""> "vbcr> vbcrlf response.write. Response.write "<input type =" "hidden" "name =" "togglenode" "value =" "" ">" & vbcrlf response.write "</form>" & vbcrlf response.write "</div> (function {script {script> vbcrlf {script {script {script> {script> ! = null) {document.treectrl.document.treectrlfrM.togglenode.value = sznodename; document.all ["Treectrlfrm"]. document.treectrlfrm.elements [sznodename] .value = -1; document.treectrlfrm.submit (); }} </script> < % end Sub End Class %>