?? usrctrcombo.ctl
字號:
VERSION 5.00
Begin VB.UserControl UsrCtrCombo
ClientHeight = 300
ClientLeft = 0
ClientTop = 0
ClientWidth = 2910
ScaleHeight = 300
ScaleWidth = 2910
ToolboxBitmap = "UsrCtrCombo.ctx":0000
Begin VB.ComboBox UsrCtrCombo
Height = 315
Left = 0
TabIndex = 0
Top = 0
Width = 3015
End
End
Attribute VB_Name = "UsrCtrCombo"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = True
Option Explicit
'實現自動查詢所需的API函數聲明
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, _
ByVal wMsg As Long, ByVal wParam As Long, lPram As Any) As Long
Private Const CB_FINDSTRING = &H14C
Private Const BACKSPACE = 8
Private Const DELETE = 46
'該變量用來決定是否要開啟自動查詢功能
'做成自己定義的屬性AuotoSelect
'聲明缺省的屬性值
Const m_def_AutoSelect = True
Private m_AutoSelect As Boolean
'事件聲明:
Event Click() 'MappingInfo=UsrCtrCombo,UsrCtrCombo,-1,Click
Attribute Click.VB_Description = "當用戶在一個對象上按下并釋放鼠標按鈕時發生。"
Event DblClick() 'MappingInfo=UsrCtrCombo,UsrCtrCombo,-1,DblClick
Attribute DblClick.VB_Description = "當用戶在一個對象上按下并釋放鼠標按鈕后再次按下并釋放鼠標按鈕時發生。"
Event KeyDown(KeyCode As Integer, Shift As Integer) 'MappingInfo=UsrCtrCombo,UsrCtrCombo,-1,KeyDown
Attribute KeyDown.VB_Description = "當用戶在擁有焦點的對象上按下任意鍵時發生。"
Event KeyPress(KeyAscii As Integer) 'MappingInfo=UsrCtrCombo,UsrCtrCombo,-1,KeyPress
Attribute KeyPress.VB_Description = "當用戶按下和釋放 ANSI 鍵時發生。"
Event KeyUp(KeyCode As Integer, Shift As Integer) 'MappingInfo=UsrCtrCombo,UsrCtrCombo,-1,KeyUp
Attribute KeyUp.VB_Description = "當用戶在擁有焦點的對象上釋放鍵時發生。"
Event MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) 'MappingInfo=UserControl,UserControl,-1,MouseDown
Attribute MouseDown.VB_Description = "當用戶在擁有焦點的對象上按下鼠標按鈕時發生。"
Event MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) 'MappingInfo=UserControl,UserControl,-1,MouseMove
Attribute MouseMove.VB_Description = "當用戶移動鼠標時發生。"
Event MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) 'MappingInfo=UserControl,UserControl,-1,MouseUp
Attribute MouseUp.VB_Description = "當用戶在擁有焦點的對象上釋放鼠標發生。"
Event WriteProperties(PropBag As PropertyBag) 'MappingInfo=UserControl,UserControl,-1,WriteProperties
Attribute WriteProperties.VB_Description = "當要求用戶控件或用戶文檔向一個文件寫入數據時發生。"
Event Validate(Cancel As Boolean) 'MappingInfo=UsrCtrCombo,UsrCtrCombo,-1,Validate
Attribute Validate.VB_Description = "當控件把焦點移交到引起有效性驗證的控件時發生。"
Event Show() 'MappingInfo=UserControl,UserControl,-1,Show
Attribute Show.VB_Description = "當控件的 Visible 屬性變為 True 時發生。"
Event Scroll() 'MappingInfo=UserControl,UserControl,-1,Scroll
Attribute Scroll.VB_Description = "當在控件上重定位滾動框時發生。"
Event Resize() 'MappingInfo=UserControl,UserControl,-1,Resize
Attribute Resize.VB_Description = "當第一次顯示一個窗體時或改變一個對象的大小時發生。"
Event ReadProperties(PropBag As PropertyBag) 'MappingInfo=UserControl,UserControl,-1,ReadProperties
Attribute ReadProperties.VB_Description = "當要求用戶控件或用戶文檔從一個文件中讀取數據時發生。"
Event Paint() 'MappingInfo=UserControl,UserControl,-1,Paint
Attribute Paint.VB_Description = "當移動、放大或露出圖片框的任何部分時發生。"
Event OLEStartDrag(Data As DataObject, AllowedEffects As Long) 'MappingInfo=UsrCtrCombo,UsrCtrCombo,-1,OLEStartDrag
Attribute OLEStartDrag.VB_Description = "手動或自動初始化 OLE 拖/放操作時發生。"
Event OLESetData(Data As DataObject, DataFormat As Integer) 'MappingInfo=UsrCtrCombo,UsrCtrCombo,-1,OLESetData
Attribute OLESetData.VB_Description = "在 OLEDragStart 事件期間,放下目標所需的數據未提供給 DataObject 時,在 OLE 拖/放源控件上發生。"
Event OLEGiveFeedback(Effect As Long, DefaultCursors As Boolean) 'MappingInfo=UsrCtrCombo,UsrCtrCombo,-1,OLEGiveFeedback
Attribute OLEGiveFeedback.VB_Description = "當需要改變鼠標光標時,在 OLE 拖/放操作中的源控件上發生。"
Event OLEDragOver(Data As DataObject, Effect As Long, Button As Integer, Shift As Integer, X As Single, Y As Single, State As Integer) 'MappingInfo=UsrCtrCombo,UsrCtrCombo,-1,OLEDragOver
Attribute OLEDragOver.VB_Description = "當 OLEDropMode 屬性設置為手動、且 OLE 拖/放操作期間鼠標經過控件時發生。"
Event OLEDragDrop(Data As DataObject, Effect As Long, Button As Integer, Shift As Integer, X As Single, Y As Single) 'MappingInfo=UsrCtrCombo,UsrCtrCombo,-1,OLEDragDrop
Attribute OLEDragDrop.VB_Description = "OLEDropMode 的屬性設置為手動、且數據通過 OLE 拖/放操作放入控件時發生。"
Event OLECompleteDrag(Effect As Long) 'MappingInfo=UsrCtrCombo,UsrCtrCombo,-1,OLECompleteDrag
Attribute OLECompleteDrag.VB_Description = "當完成或取消手動或自動拖/放之后,在 OLE 拖/放源控件上發生。"
Event InitProperties() 'MappingInfo=UserControl,UserControl,-1,InitProperties
Attribute InitProperties.VB_Description = "當第一次創建用戶控件或用戶文檔時發生。"
Event HitTest(X As Single, Y As Single, HitResult As Integer) 'MappingInfo=UserControl,UserControl,-1,HitTest
Attribute HitTest.VB_Description = "作為對鼠標活動的響應,在無窗口用戶控件中發生。"
Event Hide() 'MappingInfo=UserControl,UserControl,-1,Hide
Attribute Hide.VB_Description = "當控件的 Visible 屬性變為 False 時發生。"
Event GetDataMember(DataMember As String, Data As Object) 'MappingInfo=UserControl,UserControl,-1,GetDataMember
Attribute GetDataMember.VB_Description = "當數據使用者為其數據成員之一請求該數據時發生。"
Event DropDown() 'MappingInfo=UsrCtrCombo,UsrCtrCombo,-1,DropDown
Attribute DropDown.VB_Description = "當下拉 ComboBox 控件的列表部分時發生。"
Event Change() 'MappingInfo=UsrCtrCombo,UsrCtrCombo,-1,Change
Attribute Change.VB_Description = "當控件內容改變時發生。"
Event AsyncReadProgress(AsyncProp As AsyncProperty) 'MappingInfo=UserControl,UserControl,-1,AsyncReadProgress
Attribute AsyncReadProgress.VB_Description = "當更多的數據可用時(AsyncReadProgress 方法的結果)發生。"
Event AsyncReadComplete(AsyncProp As AsyncProperty) 'MappingInfo=UserControl,UserControl,-1,AsyncReadComplete
Attribute AsyncReadComplete.VB_Description = "當所有的數據可用時(AsyncRead 方法的結果)發生。"
'自定義屬性的操作
Public Property Get AuotoSelect() As Boolean
AuotoSelect = m_AutoSelect
End Property
Public Property Let AuotoSelect(ByVal New_AuotoSelect As Boolean)
m_AutoSelect = New_AuotoSelect
PropertyChanged "AuotoSelect"
End Property
'注意!不要刪除或修改下列被注釋的行!
'MappingInfo=UsrCtrCombo,UsrCtrCombo,-1,BackColor
Public Property Get BackColor() As OLE_COLOR
Attribute BackColor.VB_Description = "返回/設置對象中文本和圖形的背景色。"
BackColor = UsrCtrCombo.BackColor
End Property
Public Property Let BackColor(ByVal New_BackColor As OLE_COLOR)
UsrCtrCombo.BackColor() = New_BackColor
PropertyChanged "BackColor"
End Property
'注意!不要刪除或修改下列被注釋的行!
'MappingInfo=UsrCtrCombo,UsrCtrCombo,-1,ForeColor
Public Property Get ForeColor() As OLE_COLOR
Attribute ForeColor.VB_Description = "返回/設置對象中文本和圖形的前景色。"
ForeColor = UsrCtrCombo.ForeColor
End Property
Public Property Let ForeColor(ByVal New_ForeColor As OLE_COLOR)
UsrCtrCombo.ForeColor() = New_ForeColor
PropertyChanged "ForeColor"
End Property
'注意!不要刪除或修改下列被注釋的行!
'MappingInfo=UsrCtrCombo,UsrCtrCombo,-1,Enabled
Public Property Get Enabled() As Boolean
Attribute Enabled.VB_Description = "返回/設置一個值,決定一個對象是否響應用戶生成事件。"
Enabled = UsrCtrCombo.Enabled
End Property
Public Property Let Enabled(ByVal New_Enabled As Boolean)
UsrCtrCombo.Enabled() = New_Enabled
PropertyChanged "Enabled"
End Property
'注意!不要刪除或修改下列被注釋的行!
'MappingInfo=UsrCtrCombo,UsrCtrCombo,-1,Font
Public Property Get Font() As Font
Attribute Font.VB_Description = "返回一個 Font 對象。"
Attribute Font.VB_UserMemId = -512
Set Font = UsrCtrCombo.Font
End Property
Public Property Set Font(ByVal New_Font As Font)
Set UsrCtrCombo.Font = New_Font
PropertyChanged "Font"
End Property
'注意!不要刪除或修改下列被注釋的行!
'MappingInfo=UserControl,UserControl,-1,BackStyle
Public Property Get BackStyle() As Integer
Attribute BackStyle.VB_Description = "指出 Label 或 Shape 的背景樣式是透明的還是不透明的。"
BackStyle = UserControl.BackStyle
End Property
Public Property Let BackStyle(ByVal New_BackStyle As Integer)
UserControl.BackStyle() = New_BackStyle
PropertyChanged "BackStyle"
End Property
'注意!不要刪除或修改下列被注釋的行!
'MappingInfo=UserControl,UserControl,-1,BorderStyle
Public Property Get BorderStyle() As Integer
Attribute BorderStyle.VB_Description = "返回/設置對象的邊框樣式。"
BorderStyle = UserControl.BorderStyle
End Property
Public Property Let BorderStyle(ByVal New_BorderStyle As Integer)
UserControl.BorderStyle() = New_BorderStyle
PropertyChanged "BorderStyle"
End Property
'注意!不要刪除或修改下列被注釋的行!
'MappingInfo=UsrCtrCombo,UsrCtrCombo,-1,Refresh
Public Sub Refresh()
Attribute Refresh.VB_Description = "強制完全重畫一個對象。"
UsrCtrCombo.Refresh
End Sub
Private Sub UsrCtrCombo_Click()
RaiseEvent Click
m_AutoSelect = True
End Sub
Private Sub UsrCtrCombo_DblClick()
RaiseEvent DblClick
End Sub
Private Sub UsrCtrCombo_GotFocus()
m_AutoSelect = True
End Sub
Private Sub UsrCtrCombo_KeyDown(KeyCode As Integer, Shift As Integer)
RaiseEvent KeyDown(KeyCode, Shift)
If KeyCode = DELETE Then
m_AutoSelect = False
Else
m_AutoSelect = True
End If
End Sub
Private Sub UsrCtrCombo_KeyPress(KeyAscii As Integer)
RaiseEvent KeyPress(KeyAscii)
If KeyAscii = BACKSPACE Then
m_AutoSelect = False
Else
m_AutoSelect = True
End If
End Sub
Private Sub UsrCtrCombo_KeyUp(KeyCode As Integer, Shift As Integer)
RaiseEvent KeyUp(KeyCode, Shift)
End Sub
Private Sub UserControl_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
RaiseEvent MouseDown(Button, Shift, X, Y)
End Sub
Private Sub UserControl_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
RaiseEvent MouseMove(Button, Shift, X, Y)
End Sub
Private Sub UserControl_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
RaiseEvent MouseUp(Button, Shift, X, Y)
End Sub
Private Sub UserControl_WriteProperties(PropBag As PropertyBag)
Dim Index As Integer
RaiseEvent WriteProperties(PropBag)
'自己定義的屬性
Call PropBag.WriteProperty("Autoselect", m_AutoSelect, True)
Call PropBag.WriteProperty("BackColor", UsrCtrCombo.BackColor, &H80000005)
Call PropBag.WriteProperty("ForeColor", UsrCtrCombo.ForeColor, &H80000008)
Call PropBag.WriteProperty("Enabled", UsrCtrCombo.Enabled, True)
Call PropBag.WriteProperty("Font", UsrCtrCombo.Font, Ambient.Font)
Call PropBag.WriteProperty("BackStyle", UserControl.BackStyle, 1)
Call PropBag.WriteProperty("BorderStyle", UserControl.BorderStyle, 0)
Call PropBag.WriteProperty("WhatsThisHelpID", UsrCtrCombo.WhatsThisHelpID, 0)
Call PropBag.WriteProperty("TopIndex", UsrCtrCombo.TopIndex, 0)
Call PropBag.WriteProperty("ToolTipText", UsrCtrCombo.ToolTipText, "")
Call PropBag.WriteProperty("Text", UsrCtrCombo.Text, "")
Call PropBag.WriteProperty("SelText", UsrCtrCombo.SelText, "")
Call PropBag.WriteProperty("SelStart", UsrCtrCombo.SelStart, 0)
Call PropBag.WriteProperty("SelLength", UsrCtrCombo.SelLength, 0)
Call PropBag.WriteProperty("ScaleWidth", UserControl.ScaleWidth, 4800)
Call PropBag.WriteProperty("ScaleTop", UserControl.ScaleTop, 0)
Call PropBag.WriteProperty("ScaleMode", UserControl.ScaleMode, 1)
Call PropBag.WriteProperty("ScaleLeft", UserControl.ScaleLeft, 0)
Call PropBag.WriteProperty("ScaleHeight", UserControl.ScaleHeight, 3600)
Call PropBag.WriteProperty("RightToLeft", UsrCtrCombo.RightToLeft, False)
Call PropBag.WriteProperty("Picture", Picture, Nothing)
Call PropBag.WriteProperty("PaletteMode", UserControl.PaletteMode, 3)
Call PropBag.WriteProperty("Palette", Palette, Nothing)
Call PropBag.WriteProperty("OLEDropMode", UsrCtrCombo.OLEDropMode, 0)
Call PropBag.WriteProperty("OLEDragMode", UsrCtrCombo.OLEDragMode, 0)
Call PropBag.WriteProperty("MousePointer", UsrCtrCombo.MousePointer, 0)
Call PropBag.WriteProperty("MouseIcon", MouseIcon, Nothing)
Call PropBag.WriteProperty("MaskPicture", MaskPicture, Nothing)
Call PropBag.WriteProperty("MaskColor", UserControl.MaskColor, -2147483633)
Call PropBag.WriteProperty("Locked", UsrCtrCombo.Locked, False)
Call PropBag.WriteProperty("ListIndex", UsrCtrCombo.ListIndex, 0)
'TO DO: 你映射到的成員包含數據數組。
' 您必須提供代碼來保持數組。
' 以下顯示原型行:
Call PropBag.WriteProperty("List" & Index, UsrCtrCombo.List(Index), "")
'TO DO: 你映射到的成員包含數據數組。
' 您必須提供代碼來保持數組。
' 以下顯示原型行:
'Call PropBag.WriteProperty("ItemData" & Index, UsrCtrCombo.ItemData(Index), 0)
Call PropBag.WriteProperty("HitBehavior", UserControl.HitBehavior, 1)
Call PropBag.WriteProperty("FontUnderline", UsrCtrCombo.FontUnderline, 0)
Call PropBag.WriteProperty("FontTransparent", UserControl.FontTransparent, True)
Call PropBag.WriteProperty("FontStrikethru", UsrCtrCombo.FontStrikethru, 0)
Call PropBag.WriteProperty("FontSize", UsrCtrCombo.FontSize, 0)
Call PropBag.WriteProperty("FontName", UsrCtrCombo.FontName, "")
Call PropBag.WriteProperty("FontItalic", UsrCtrCombo.FontItalic, 0)
Call PropBag.WriteProperty("FontBold", UsrCtrCombo.FontBold, 0)
Call PropBag.WriteProperty("FillStyle", UserControl.FillStyle, 1)
Call PropBag.WriteProperty("FillColor", UserControl.FillColor, &H0&)
Call PropBag.WriteProperty("DrawWidth", UserControl.DrawWidth, 1)
Call PropBag.WriteProperty("DrawStyle", UserControl.DrawStyle, 0)
Call PropBag.WriteProperty("DrawMode", UserControl.DrawMode, 13)
Call PropBag.WriteProperty("CurrentY", UserControl.CurrentY, 0)
Call PropBag.WriteProperty("CurrentX", UserControl.CurrentX, 0)
Call PropBag.WriteProperty("ClipControls", UserControl.ClipControls, True)
Call PropBag.WriteProperty("ClipBehavior", UserControl.ClipBehavior, 1)
Call PropBag.WriteProperty("CausesValidation", UsrCtrCombo.CausesValidation, True)
Call PropBag.WriteProperty("AutoRedraw", UserControl.AutoRedraw, False)
Call PropBag.WriteProperty("Appearance", UsrCtrCombo.Appearance, 1)
End Sub
'注意!不要刪除或修改下列被注釋的行!
'MappingInfo=UsrCtrCombo,UsrCtrCombo,-1,WhatsThisHelpID
Public Property Get WhatsThisHelpID() As Long
Attribute WhatsThisHelpID.VB_Description = "返回/設置與對象相關聯的上下文號。"
WhatsThisHelpID = UsrCtrCombo.WhatsThisHelpID
End Property
Public Property Let WhatsThisHelpID(ByVal New_WhatsThisHelpID As Long)
UsrCtrCombo.WhatsThisHelpID() = New_WhatsThisHelpID
PropertyChanged "WhatsThisHelpID"
End Property
'注意!不要刪除或修改下列被注釋的行!
'MappingInfo=UserControl,UserControl,-1,ValidateControls
Public Sub ValidateControls()
Attribute ValidateControls.VB_Description = "在退出此窗體之前,此窗體最后一個控件的內容無效。"
UserControl.ValidateControls
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -