|
About Drag List Box Notification Messages
A drag list box sends its parent window notification messages in the form of
drag list messages. The specific notification, which is identified by the uNotification member of the specified DRAGLISTINFO structure, can be DL_BEGINDRAG, DL_DRAGGING, DL_CANCELDRAG, or DL_DROPPED.
The DL_BEGINDRAG notification message is sent when the user clicks the left mouse button with
the cursor on a list item. The parent window can return TRUE to begin the drag
operation or FALSE to disallow dragging. In this way, the parent window can
enable dragging for some list items and disable it for others. You can determine
which list item is at the specified location by using the LBItemFromPt function.
If dragging is in effect, the DL_DRAGGING notification message is sent whenever the mouse is moved, or at regular
intervals if the mouse is not being moved. The parent window should determine the
list item under the cursor by using LBItemFromPt and then draw the insert icon by using the DrawInsert function. By specifying TRUE for the bAutoScroll parameter of LBItemFromPt, you can cause the list box to scroll by one line if the cursor is above or
below its client area. The value you return for this notification specifies the
type of mouse cursor that the drag list box should set.
The DL_CANCELDRAG notification message is sent if the user cancels a drag operation by clicking
the right mouse button or pressing the ESC key. The DL_DROPPED notification message is sent if the user completes a drag operation by
releasing the left mouse button, even if the cursor is not over a list item. The drag
list box releases the mouse capture before sending either notification. The
return value of these two notifications is ignored.
Related Links
Software for Delphi and C++ Builder developers
Software for Visual Studio .NET developers
Software for Visual Basic 6 developers
Delphi Tips&Tricks
MegaDetailed.NET
TMS Scripter Studio Pro components for Delphi/C++Builder
More Online Helps
Win32 Multimedia Programmer's Reference (mmedia.hlp)
OLE Programmer's Reference (ole.hlp)
Microsoft Windows Pen API Programmer's Reference (penapi.hlp)
Microsoft Windows Sockets 2 Reference (sock2.hlp)
Microsoft Windows Telephony API (TAPI) Programmer's Reference (tapi.hlp)
Unix Manual Pages
|