[Webinar] Streamline your web hosting managementRegister Today

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 856
  • Last Modified:

How to hook a Combobox CloseUP event message?

Hi
I have a standard combobox in a frame on a form. I have some code that makes the frame transparent i.e. it BitBlts the underlying portion of the form onto the frame with a mask to make it seem transparent (I have a gradient background on the form that I want the frame to show)
When the combobox is clicked, the drop down window covers part of my frame. When the drop down window closes the part of the frame under the dropdown window that was "transparent" now  shows the frame backcolour while the rest of the frame is transparent as before.
What I want to be a ble to do is hook the combo closeup message (or whatever the appropriate message is) to trigger a redraw of my frame transparency code.  I do not wish to use a timer to trigger the redraw repeatedly, I am looking for a lower level solution.
Thoughts?
Thanks in advance
Graeme
0
superg65
Asked:
superg65
  • 3
1 Solution
 
danaseamanCommented:
Subclass and get WM_COMMAND message and HiWord of wParam = CBN_CLOSEUP.
See code below:
   Case WM_COMMAND
      If lParam = m_hWnd Then
         ' Debug.Print "WM_COMMAND"
         Select Case (wParam \ &H10000) And &HFFFF&
         Case CBN_DBLCLK
            RaiseEvent DblClick
         Case CBN_DROPDOWN
            RaiseEvent DropDown
         Case CBN_CLOSEUP
            m_hWndDropDown = 0
            RaiseEvent CloseUp
         Case CBN_SETFOCUS, CBN_KILLFOCUS
            ' Not required, handed by UserControl
         Case CBN_SELCHANGE
            'Debug.Print "CBN_SELCHANGE", ListIndex, GetItemText(ListIndex)
            SetCboEditText GetItemText(ListIndex)
            RaiseEvent Change
            RaiseEvent Click
         Case CBN_EDITCHANGE
            RaiseEvent Change
         End Select
      End If

Open in new window

0
 
superg65Author Commented:
Hi
Looks like just what I was after. Will try it out tomorrow and get back to you.
Thanks G
0
 
superg65Author Commented:
Hi Danaseaman
Have not had a chance to test your solution today - sorry should get to it tomorrow but had to do stuff with my kids today.
After thinking about it a bit, I  have just raised another question related to this that you might like to have a look at
http://www.experts-exchange.com/Programming/Languages/Visual_Basic/Q_23504174.html
Thanks
G

0
 
superg65Author Commented:
Thanks for this. G
0

Featured Post

Never miss a deadline with monday.com

The revolutionary project management tool is here!   Plan visually with a single glance and make sure your projects get done.

  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now