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

浏览器

开发平台:

Visual Basic

  1. VERSION 1.0 CLASS
  2. BEGIN
  3.   MultiUse = -1  'True
  4.   Persistable = 0  'NotPersistable
  5.   DataBindingBehavior = 0  'vbNone
  6.   DataSourceBehavior  = 0  'vbNone
  7.   MTSTransactionMode  = 0  'NotAnMTSObject
  8. END
  9. Attribute VB_Name = "cSideBandDemo"
  10. Attribute VB_GlobalNameSpace = False
  11. Attribute VB_Creatable = True
  12. Attribute VB_PredeclaredId = False
  13. Attribute VB_Exposed = True
  14. Option Explicit
  15. Private Declare Function SetWindowLong Lib "user32.dll" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
  16. Private Declare Function GetWindowLong Lib "user32.dll" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
  17. Private Const GWL_STYLE As Long = -16
  18. Private Const WS_CHILD As Long = &H40000000
  19. Private Declare Function SetParent Lib "user32.dll" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long
  20. Private Declare Function MoveWindow Lib "user32.dll" (ByVal hwnd As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal bRepaint As Long) As Long
  21. Implements LEPluginLib.ILESideBand
  22. Dim m_frm As frmMain
  23. Private Sub Class_Initialize()
  24. If Not m_frm Is Nothing Then
  25.     Unload m_frm
  26.     Set m_frm = Nothing
  27. End If
  28. End Sub
  29. Private Sub ILESideBand_CloseBand()
  30. If Not m_frm Is Nothing Then
  31.     Unload m_frm
  32.     Set m_frm = Nothing
  33. End If
  34. End Sub
  35. Private Sub ILESideBand_Resize(ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long)
  36. If Not m_frm Is Nothing Then
  37.     If m_frm.Visible Then
  38.         MoveWindow m_frm.hwnd, x, y, cx, cy, 1
  39.     Else
  40.         MoveWindow m_frm.hwnd, x, y, cx, cy, 0
  41.     End If
  42. End If
  43. End Sub
  44. Private Function ILESideBand_SendMessage(ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
  45. End Function
  46. Private Sub ILESideBand_SetSite(ByVal hParent As Long, ByVal vOutPort As LEPluginLib.ILEInfo)
  47. On Error Resume Next
  48. If m_frm Is Nothing Then
  49.     Set m_frm = New frmMain
  50.     Load m_frm
  51.     SetWindowLong m_frm.hwnd, GWL_STYLE, _
  52.         GetWindowLong(m_frm.hwnd, GWL_STYLE) Or WS_CHILD
  53. End If
  54. If Not m_frm Is Nothing Then
  55.     SetParent m_frm.hwnd, hParent
  56.     MoveWindow m_frm.hwnd, 0, 0, 100, 200, 0
  57. End If
  58. End Sub
  59. Private Sub ILESideBand_ShowBand(ByVal bShow As Boolean)
  60. m_frm.Visible = bShow
  61. End Sub