mFavMenu.bas
上传用户:davilee3
上传日期:2015-04-22
资源大小:986k
文件大小:2k
源码类别:

浏览器

开发平台:

Visual Basic

  1. Attribute VB_Name = "mFavMenu"
  2. '关于收藏夹的冬冬
  3. Option Explicit
  4. '收藏夹信息
  5. '项(url)信息
  6. Public Type typFavInfo
  7.     Url As String
  8.     Title As String
  9.     path As String
  10.     hSubMenu As Long
  11.     hNode As Long
  12. End Type
  13. 'Public webUrl() As String
  14. Public favoriteInfo() As typFavInfo
  15. Public itemMenuCount As Long
  16. '目录信息
  17. Public Type subMenuInfo
  18.     Title As String
  19.     hwnd As Long
  20.     path As String
  21.     isLoadSub As Boolean
  22.     hNode As Long   'treeview node handle
  23. End Type
  24. Public loadSubInfo() As subMenuInfo
  25. Public subMenuCount As Long
  26. Public Max_subMenuCount As Long
  27. Public Max_itemMenuCount As Long
  28. Public Const MaxMenuCharLength As Long = 30
  29. '整理收藏夹函数
  30. Public Declare Function DoOrganizeFavDlg Lib "shdocvw.dll" _
  31.   (ByVal hwnd As Long, ByVal lpszRootFolder As String) As Long
  32.   
  33. '动态菜单ID的偏移量
  34. Public Const MenuIDOffset As Long = 10000
  35. '收藏夹路径
  36. Public favoritePath As String
  37. '获得子菜单下对应的menuitem
  38. Public Sub GetItemFromSubMenu(hSubMenu&, Optional nItems As Collection)
  39. Dim i&
  40. If nItems Is Nothing Then
  41.     Set nItems = New Collection
  42. End If
  43. For i = 1 To itemMenuCount
  44.     If favoriteInfo(i).hSubMenu = hSubMenu Then
  45.         nItems.Add i
  46.     End If
  47. Next i
  48. End Sub
  49. '在一个窗口中显示所在层的链接
  50. Public Sub ShowFloatSubFav(hSubMenu&)
  51. Dim i&
  52. Dim tFloat As frmFloatSubFav
  53. Dim tTitle$
  54. Dim tItems As Collection
  55. 'Dim tPt&
  56. For i = 0 To subMenuCount
  57.     If loadSubInfo(i).hwnd = hSubMenu Then
  58.         tTitle = loadSubInfo(i).Title
  59.         Exit For
  60.     End If
  61. Next i
  62. Set tFloat = New frmFloatSubFav
  63. Load tFloat
  64. tFloat.Caption = tTitle
  65. Call GetItemFromSubMenu(hSubMenu, tItems)
  66. For i = 1 To tItems.Count
  67.     tFloat.AddButton favoriteInfo(tItems(i)).Title, favoriteInfo(tItems(i)).Url
  68. Next i
  69. tFloat.Resize
  70. tFloat.SetPos
  71. tFloat.Show , gMainForm
  72. End Sub
  73. '打开所在层的所有链接
  74. Public Sub OpenAllLink(hSubMenu&)
  75. Dim i&
  76. For i = 1 To itemMenuCount
  77.     If favoriteInfo(i).hSubMenu = hSubMenu Then
  78.         gMainForm.NewWebbrowser favoriteInfo(i).Url
  79.     End If
  80. Next i
  81. End Sub