vbAccelerator - Contents of code file: frmTest.frm

VERSION 5.00
Object = "{436403CD-EDD8-11D2-8040-00C04FA4EE99}#14.0#0"; "vbalCbEx.ocx"
Begin VB.Form frmComboExTest 
   Caption         =   "vbAccelerator ComboBoxEx Control Tester"
   ClientHeight    =   6825
   ClientLeft      =   4170
   ClientTop       =   3165
   ClientWidth     =   6240
   BeginProperty Font 
      Name            =   "Tahoma"
      Size            =   8.25
      Charset         =   0
      Weight          =   400
      Underline       =   0   'False
      Italic          =   0   'False
      Strikethrough   =   0   'False
   EndProperty
   Icon            =   "frmTest.frx":0000
   LinkTopic       =   "Form1"
   ScaleHeight     =   6825
   ScaleWidth      =   6240
   Begin vbalComboEx.vbalCboEx cboSimple 
      Height          =   2550
      Left            =   3240
      TabIndex        =   11
      Top             =   3960
      Width           =   2895
      _ExtentX        =   5106
      _ExtentY        =   4498
      Style           =   1
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
         Name            =   "MS Sans Serif"
         Size            =   8.25
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      ExtendedUI      =   0   'False
      DropDownWidth   =   0
      DoAutoComplete  =   -1  'True
   End
   Begin vbalComboEx.vbalCboEx cboFonts 
      Height          =   330
      Left            =   180
      TabIndex        =   10
      Top             =   3960
      Width           =   2835
      _ExtentX        =   5001
      _ExtentY        =   582
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
         Name            =   "Tahoma"
         Size            =   8.25
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      ExtendedUI      =   0   'False
      DropDownWidth   =   0
      AutoCompleteListItemsOnly=   -1  'True
      AutoCompleteItemsAreSorted=   -1  'True
      DoAutoComplete  =   -1  'True
      DrawStyle       =   8
   End
   Begin vbalComboEx.vbalCboEx cboColourPicker 
      Height          =   330
      Left            =   180
      TabIndex        =   9
      Top             =   4620
      Width           =   2835
      _ExtentX        =   5001
      _ExtentY        =   582
      Style           =   2
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
         Name            =   "Tahoma"
         Size            =   8.25
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      DropDownWidth   =   0
      DrawStyle       =   7
   End
   Begin VB.CommandButton cmdInfo 
      Caption         =   "Info>"
      Height          =   375
      Left            =   3060
      TabIndex        =   8
      Top             =   240
      Width           =   735
   End
   Begin VB.CheckBox chkDrawMode 
      Appearance      =   0  'Flat
      Caption         =   "&Owner Draw"
      ForeColor       =   &H80000008&
      Height          =   195
      Left            =   120
      TabIndex        =   7
      Top             =   900
      Width           =   2835
   End
   Begin VB.CheckBox chkAutoComplete 
      Appearance      =   0  'Flat
      Caption         =   "&Auto Complete"
      ForeColor       =   &H80000008&
      Height          =   255
      Left            =   120
      TabIndex        =   6
      Top             =   660
      Width           =   2835
   End
   Begin VB.CheckBox chkSorted 
      Appearance      =   0  'Flat
      Caption         =   "&Sorted"
      ForeColor       =   &H80000008&
      Height          =   195
      Left            =   180
      TabIndex        =   4
      Top             =   5880
      Width           =   2175
   End
   Begin VB.ListBox lstInfo 
      Height          =   1620
      Left            =   3900
      TabIndex        =   3
      Top             =   240
      Width           =   2235
   End
   Begin vbalComboEx.vbalCboEx vbalCboex2 
      Height          =   345
      Left            =   180
      TabIndex        =   2
      Top             =   5460
      Width           =   2835
      _ExtentX        =   5001
      _ExtentY        =   609
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
         Name            =   "Arial"
         Size            =   8.25
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      DropDownWidth   =   400
      AutoCompleteItemsAreSorted=   -1  'True
      DoAutoComplete  =   -1  'True
      BackColor       =   255
   End
   Begin vbalComboEx.vbalCboEx vbalCboEx1 
      Height          =   330
      Left            =   120
      TabIndex        =   1
      Top             =   240
      Width           =   2895
      _ExtentX        =   5106
      _ExtentY        =   582
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
         Name            =   "Tahoma"
         Size            =   8.25
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      DropDownWidth   =   256
      DrawStyle       =   9
   End
   Begin VB.ListBox lstStatus 
      BeginProperty Font 
         Name            =   "MS Sans Serif"
         Size            =   8.25
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   1620
      Left            =   120
      TabIndex        =   0
      Top             =   2100
      Width           =   6015
   End
   Begin vbalComboEx.vbalCboEx vbalCboEx3 
      Height          =   330
      Left            =   120
      TabIndex        =   17
      Top             =   1440
      Width           =   2835
      _ExtentX        =   5001
      _ExtentY        =   582
      Style           =   2
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
         Name            =   "Tahoma"
         Size            =   8.25
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      ExtendedUI      =   0   'False
      DropDownWidth   =   256
      DrawStyle       =   9
   End
   Begin VB.Label lblInfo 
      Caption         =   "Same Control, but drop-down list style:"
      Height          =   195
      Index           =   6
      Left            =   120
      TabIndex        =   18
      Top             =   1200
      Width           =   5955
   End
   Begin VB.Label lblInfo 
      Caption         =   "Generic Auto Complete tester - nb can change Sorted
       property at Run Time!"
      Height          =   435
      Index           =   5
      Left            =   180
      TabIndex        =   16
      Top             =   5040
      Width           =   2835
   End
   Begin VB.Label lblInfo 
      Caption         =   "Colour Picker, drop-down list:"
      Height          =   195
      Index           =   4
      Left            =   180
      TabIndex        =   15
      Top             =   4380
      Width           =   2835
   End
   Begin VB.Label lblInfo 
      Caption         =   "Combo with Simple Style:"
      Height          =   195
      Index           =   3
      Left            =   3240
      TabIndex        =   14
      Top             =   3720
      Width           =   2835
   End
   Begin VB.Label lblInfo 
      Caption         =   "Font Picker, auto complete, ex UI"
      Height          =   195
      Index           =   2
      Left            =   180
      TabIndex        =   13
      Top             =   3720
      Width           =   2835
   End
   Begin VB.Label lblInfo 
      Caption         =   "Drive Picker:"
      Height          =   195
      Index           =   1
      Left            =   120
      TabIndex        =   12
      Top             =   0
      Width           =   5955
   End
   Begin VB.Label lblInfo 
      Caption         =   "Events:"
      Height          =   195
      Index           =   0
      Left            =   120
      TabIndex        =   5
      Top             =   1860
      Width           =   5955
   End
End
Attribute VB_Name = "frmComboExTest"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit

Private Const EM_GETSEL = &HB0
Private Const EM_SETSEL = &HB1
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal
 hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Declare Function SendMessageLong Lib "user32" Alias "SendMessageA"
 (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As
 Long) As Long
Private Declare Function SendMessageString Lib "user32" Alias "SendMessageA"
 (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As
 String) As Long
Private m_cIml As New cVBALImageList

Private Sub Status(ByVal sMsg As String)
   lstStatus.AddItem sMsg
   lstStatus.ListIndex = lstStatus.NewIndex
End Sub
Private Sub Info()
   With vbalCboEx1
      lstInfo.Clear
      lstInfo.AddItem "MaxTextLength: " & .MaxLength
      lstInfo.AddItem "ListCount: " & .ListCount
      lstInfo.AddItem "ListIndex: " & .ListIndex
      lstInfo.AddItem "Text: " & .Text
      lstInfo.AddItem "SelStart: " & .SelStart
      lstInfo.AddItem "SelLength: " & .SelLength
      lstInfo.AddItem "List: " & .List(.ListIndex)
      lstInfo.AddItem "Icon: " & .ItemIcon(.ListIndex)
      lstInfo.AddItem "Indent: " & .ItemIndent(.ListIndex)
   End With

End Sub

Private Sub chkAutoComplete_Click()
   vbalCboEx1.DoAutoComplete = (chkAutoComplete.Value = Checked)
End Sub

Private Sub chkDrawMode_Click()
   If chkDrawMode.Value = Checked Then
      vbalCboEx1.DrawStyle = eccxDrawODCboList
   Else
      vbalCboEx1.DrawStyle = eccxDrawDefault
   End If
End Sub

Private Sub chkSorted_Click()
   vbalCboex2.Sorted = (chkSorted.Value = Checked)
End Sub

Private Sub cmdInfo_Click()
   Info
End Sub

Private Sub Form_Load()
Dim i As Long
Dim iIcon As Long
   
   For i = 1 To 100
      vbalCboex2.AddItem "Test" & i
   Next i
   
   m_cIml.IconSizeX = 16: m_cIml.IconSizeY = 16: m_cIml.ColourDepth =
    ILC_COLOR24
   m_cIml.Create
   m_cIml.AddFromFile App.Path & "\mnubar.bmp", IMAGE_BITMAP
   cboSimple.ImageList = m_cIml.hIml
   For i = 1 To 100
      iIcon = i Mod m_cIml.ImageCount
      cboSimple.AddItemAndData "Test" & i, iIcon
   Next i
   cboSimple.ListIndex = 0
   cboSimple.Move cboSimple.left, cboSimple.tOp, cboSimple.Width,
    cboSimple.Height
   
   
   ' Add the QB Colors:
   For i = 0 To 15
      cboColourPicker.AddItemAndData "QBColor:" & i, , , QBColor(i)
   Next i
   
End Sub

Private Sub vbalCboEx1_AutoCompleteSelection(ByVal sItem As String, ByVal
 lIndex As Long)
   Status "AutoCompleteSelection:" & sItem & "," & lIndex
End Sub

Private Sub vbalCboEx1_BeginEdit(ByVal iIndex As Long)
   Status "BeginEdit:" & iIndex
End Sub

Private Sub vbalCboEx1_Change()
   Status "Change"
   Info
End Sub

Private Sub vbalCboEx1_Click()
   Status "Click"
   Info
End Sub

Private Sub vbalCboEx1_CloseUp()
   Status "CloseUp"
End Sub

Private Sub vbalCboEx1_DblClick()
   Status "DblClick"
End Sub

Private Sub vbalCboEx1_DragDrop(Source As Control, x As Single, y As Single)
   Status "DragDrop"
End Sub

Private Sub vbalCboEx1_DragOver(Source As Control, x As Single, y As Single,
 State As Integer)
   Status "DragOver"
End Sub

Private Sub vbalCboEx1_DropDown()
   Status "DropDown"
End Sub

Private Sub vbalCboEx1_EndEdit(ByVal iIndex As Long, ByVal bChanged As Boolean,
 ByVal sText As String, ByVal eWHy As vbalComboEx.ECCXEndEditReason, ByVal
 iNewIndex As Long)
   Status "EndEdit:" & iIndex & ",Changed:" & bChanged & ",Text:" & sText &
    ",Why=" & eWHy & ",iNewIndex = " & iNewIndex
End Sub

Private Sub vbalCboEx1_GotFocus()
   Status "GotFocus"
End Sub

Private Sub vbalCboEx1_KeyDown(KeyCode As Integer, Shift As Integer)
   Status "KeyDown:" & KeyCode & "," & Shift
End Sub

Private Sub vbalCboEx1_KeyPress(KeyAscii As Integer)
   Status "KeyPress:" & KeyAscii
End Sub

Private Sub vbalCboEx1_KeyUp(KeyCode As Integer, Shift As Integer)
   Status "KeyUp:" & KeyCode & "," & Shift
End Sub

Private Sub vbalCboEx1_LostFocus()
   Status "LostFocus"
End Sub

Private Sub vbalCboEx1_RequestDropDownResize(lLeft As Long, lTop As Long,
 lRight As Long, lBottom As Long, bCancel As Boolean)
   Status "RequestDropDownResize:" & lLeft & "," & lTop & "," & lRight & "," &
    lBottom
End Sub

Private Sub vbalCboEx2_RequestDropDownResize(lLeft As Long, lTop As Long,
 lRight As Long, lBottom As Long, bCancel As Boolean)
   lRight = lLeft + vbalCboex2.Width * 2 \ Screen.TwipsPerPixelX
   If lRight > (Screen.Width \ Screen.TwipsPerPixelX) - 4 Then
      lLeft = lLeft - (lRight - Screen.Width \ Screen.TwipsPerPixelX) - 4
      lRight = (Screen.Width \ Screen.TwipsPerPixelX) - 4
   End If
End Sub