AeroGroupBox.ctl
上传用户:jnjasmy
上传日期:2015-01-04
资源大小:637k
文件大小:8k
源码类别:

GDI/图象编程

开发平台:

Visual Basic

  1. VERSION 5.00
  2. Begin VB.UserControl AeroGroupBox 
  3.    BackColor       =   &H00C0C0C0&
  4.    ClientHeight    =   3600
  5.    ClientLeft      =   0
  6.    ClientTop       =   0
  7.    ClientWidth     =   4800
  8.    ClipControls    =   0   'False
  9.    ControlContainer=   -1  'True
  10.    BeginProperty Font 
  11.       Name            =   "Segoe UI"
  12.       Size            =   9
  13.       Charset         =   0
  14.       Weight          =   400
  15.       Underline       =   0   'False
  16.       Italic          =   0   'False
  17.       Strikethrough   =   0   'False
  18.    EndProperty
  19.    MaskColor       =   &H00C0C0C0&
  20.    ScaleHeight     =   240
  21.    ScaleMode       =   3  'Pixel
  22.    ScaleWidth      =   320
  23.    ToolboxBitmap   =   "AeroGroupBox.ctx":0000
  24. End
  25. Attribute VB_Name = "AeroGroupBox"
  26. Attribute VB_GlobalNameSpace = False
  27. Attribute VB_Creatable = True
  28. Attribute VB_PredeclaredId = False
  29. Attribute VB_Exposed = True
  30. Option Explicit
  31. Private Declare Function RoundRect Lib "gdi32.dll" (ByVal hdc As Long, ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long, ByVal X3 As Long, ByVal Y3 As Long) As Long
  32. Private m_CRect As RECT
  33. 'Default Property Values:
  34. Const m_def_Caption = ""
  35. Const m_def_ForeColor = vbBlack
  36. 'Property Variables:
  37. Dim m_Caption As String
  38. Dim m_ForeColor As OLE_COLOR
  39. Dim m_BackColor As OLE_COLOR
  40. 'Event Declarations:
  41. Event Click() 'MappingInfo=UserControl,UserControl,-1,Click
  42. Attribute Click.VB_Description = "Occurs when the user presses and then releases a mouse button over an object."
  43. Attribute Click.VB_UserMemId = -600
  44. Event DblClick() 'MappingInfo=UserControl,UserControl,-1,DblClick
  45. Attribute DblClick.VB_Description = "Occurs when the user presses and releases a mouse button and then presses and releases it again over an object."
  46. Attribute DblClick.VB_UserMemId = -601
  47. Event MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) 'MappingInfo=UserControl,UserControl,-1,MouseDown
  48. Attribute MouseDown.VB_Description = "Occurs when the user presses the mouse button while an object has the focus."
  49. Attribute MouseDown.VB_UserMemId = -605
  50. Event MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) 'MappingInfo=UserControl,UserControl,-1,MouseMove
  51. Attribute MouseMove.VB_Description = "Occurs when the user moves the mouse."
  52. Attribute MouseMove.VB_UserMemId = -606
  53. Event MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) 'MappingInfo=UserControl,UserControl,-1,MouseUp
  54. Attribute MouseUp.VB_Description = "Occurs when the user releases the mouse button while an object has the focus."
  55. Attribute MouseUp.VB_UserMemId = -607
  56. Public Sub About()
  57. Attribute About.VB_UserMemId = -552
  58.   fAbout.Show vbModal
  59. End Sub
  60. Private Sub UserControl_AmbientChanged(PropertyName As String)
  61.   UserControl_Resize
  62. End Sub
  63. Private Sub UserControl_Paint()
  64.   Call UserControl_Resize
  65. End Sub
  66. Private Sub UserControl_Resize()
  67.   On Error Resume Next
  68.   With UserControl
  69.     .Cls
  70.     .ForeColor = vbWhite
  71.     RoundRect UserControl.hdc, 1, (TextHeight("H") / 2) + 1, ScaleWidth - 2, ScaleHeight - 1, 5, 5
  72.     .ForeColor = RGB(213, 223, 229)
  73.     RoundRect UserControl.hdc, 0, (TextHeight("H") / 2), ScaleWidth - 1, ScaleHeight - 2, 5, 5
  74.     .ForeColor = m_ForeColor
  75.     If m_Caption <> "" Then
  76.       SetRect m_CRect, 6, 0, .TextWidth(m_Caption) + 12, .TextHeight(m_Caption)
  77.       UserControl.Line (6, 0)-(.TextWidth(m_Caption) + 12, .TextHeight(m_Caption)), m_BackColor, BF
  78.       DrawText UserControl.hdc, m_Caption, -1, m_CRect, DT_CENTER Or DT_VCENTER
  79.     End If
  80.     Set UserControl.MaskPicture = UserControl.Image
  81.   End With
  82. End Sub
  83. Public Property Get BackColor() As OLE_COLOR
  84. Attribute BackColor.VB_ProcData.VB_Invoke_Property = ";Appearance"
  85. Attribute BackColor.VB_UserMemId = -501
  86.   BackColor = m_BackColor
  87. End Property
  88. Public Property Let BackColor(ByVal New_BackColor As OLE_COLOR)
  89.   m_BackColor = New_BackColor
  90.   PropertyChanged "BackColor"
  91.   UserControl.BackColor = m_BackColor
  92.   UserControl_Resize
  93. End Property
  94. 'WARNING! DO NOT REMOVE OR MODIFY THE FOLLOWING COMMENTED LINES!
  95. 'MappingInfo=UserControl,UserControl,-1,ForeColor
  96. Public Property Get ForeColor() As OLE_COLOR
  97. Attribute ForeColor.VB_Description = "Returns/sets the foreground color used to display text and graphics in an object."
  98. Attribute ForeColor.VB_ProcData.VB_Invoke_Property = ";Appearance"
  99. Attribute ForeColor.VB_UserMemId = -513
  100.   ForeColor = m_ForeColor
  101. End Property
  102. Public Property Let ForeColor(ByVal New_ForeColor As OLE_COLOR)
  103.   m_ForeColor = New_ForeColor
  104.   PropertyChanged "ForeColor"
  105.   UserControl_Resize
  106. End Property
  107. 'WARNING! DO NOT REMOVE OR MODIFY THE FOLLOWING COMMENTED LINES!
  108. 'MappingInfo=UserControl,UserControl,-1,Enabled
  109. Public Property Get Enabled() As Boolean
  110. Attribute Enabled.VB_Description = "Returns/sets a value that determines whether an object can respond to user-generated events."
  111. Attribute Enabled.VB_ProcData.VB_Invoke_Property = ";Behavior"
  112. Attribute Enabled.VB_UserMemId = -514
  113.   Enabled = UserControl.Enabled
  114. End Property
  115. Public Property Let Enabled(ByVal New_Enabled As Boolean)
  116.   UserControl.Enabled() = New_Enabled
  117.   PropertyChanged "Enabled"
  118. End Property
  119. 'WARNING! DO NOT REMOVE OR MODIFY THE FOLLOWING COMMENTED LINES!
  120. 'MappingInfo=UserControl,UserControl,-1,Font
  121. Public Property Get Font() As Font
  122. Attribute Font.VB_Description = "Returns a Font object."
  123. Attribute Font.VB_ProcData.VB_Invoke_Property = ";Font"
  124. Attribute Font.VB_UserMemId = -512
  125.   Set Font = UserControl.Font
  126. End Property
  127. Public Property Set Font(ByVal New_Font As Font)
  128.   Set UserControl.Font = New_Font
  129.   PropertyChanged "Font"
  130. End Property
  131. 'WARNING! DO NOT REMOVE OR MODIFY THE FOLLOWING COMMENTED LINES!
  132. 'MappingInfo=UserControl,UserControl,-1,Refresh
  133. Public Sub Refresh()
  134. Attribute Refresh.VB_Description = "Forces a complete repaint of a object."
  135. Attribute Refresh.VB_UserMemId = -550
  136.   UserControl.Refresh
  137. End Sub
  138. Private Sub UserControl_Click()
  139.   RaiseEvent Click
  140. End Sub
  141. Private Sub UserControl_DblClick()
  142.   RaiseEvent DblClick
  143. End Sub
  144. Private Sub UserControl_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
  145.   RaiseEvent MouseDown(Button, Shift, X, Y)
  146. End Sub
  147. Private Sub UserControl_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
  148.   RaiseEvent MouseMove(Button, Shift, X, Y)
  149. End Sub
  150. Private Sub UserControl_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
  151.   RaiseEvent MouseUp(Button, Shift, X, Y)
  152. End Sub
  153. 'WARNING! DO NOT REMOVE OR MODIFY THE FOLLOWING COMMENTED LINES!
  154. 'MappingInfo=UserControl,UserControl,-1,hWnd
  155. Public Property Get hWnd() As Long
  156. Attribute hWnd.VB_Description = "Returns a handle (from Microsoft Windows) to an object's window."
  157. Attribute hWnd.VB_ProcData.VB_Invoke_Property = ";Misc"
  158. Attribute hWnd.VB_UserMemId = -515
  159.   hWnd = UserControl.hWnd
  160. End Property
  161. 'WARNING! DO NOT REMOVE OR MODIFY THE FOLLOWING COMMENTED LINES!
  162. 'MemberInfo=13,0,0,
  163. Public Property Get Caption() As String
  164. Attribute Caption.VB_ProcData.VB_Invoke_Property = ";Appearance"
  165. Attribute Caption.VB_UserMemId = -518
  166.   Caption = m_Caption
  167. End Property
  168. Public Property Let Caption(ByVal New_Caption As String)
  169.   m_Caption = New_Caption
  170.   PropertyChanged "Caption"
  171.   UserControl_Resize
  172. End Property
  173. 'Initialize Properties for User Control
  174. Private Sub UserControl_InitProperties()
  175.   Set UserControl.Font = Ambient.Font
  176.   m_Caption = Ambient.DisplayName
  177.   m_ForeColor = m_def_ForeColor
  178.   m_BackColor = Ambient.BackColor
  179. End Sub
  180. 'Load property values from storage
  181. Private Sub UserControl_ReadProperties(PropBag As PropertyBag)
  182.   m_BackColor = PropBag.ReadProperty("BackColor")
  183.   m_ForeColor = PropBag.ReadProperty("ForeColor", m_def_ForeColor)
  184.   UserControl.Enabled = PropBag.ReadProperty("Enabled", True)
  185.   Set UserControl.Font = PropBag.ReadProperty("Font", Ambient.Font)
  186.   m_Caption = PropBag.ReadProperty("Caption", m_def_Caption)
  187.   UserControl.BackColor = m_BackColor
  188. End Sub
  189. Private Sub UserControl_Show()
  190.   UserControl_Resize
  191. End Sub
  192. 'Write property values to storage
  193. Private Sub UserControl_WriteProperties(PropBag As PropertyBag)
  194.   Call PropBag.WriteProperty("BackColor", m_BackColor)
  195.   Call PropBag.WriteProperty("ForeColor", m_ForeColor, m_def_ForeColor)
  196.   Call PropBag.WriteProperty("Enabled", UserControl.Enabled, True)
  197.   Call PropBag.WriteProperty("Font", UserControl.Font, Ambient.Font)
  198.   Call PropBag.WriteProperty("Caption", m_Caption, m_def_Caption)
  199. End Sub