
NM_RDBLCLK
lpnmlv = (LPNMLISTVIEW) lParam;
Sent by a list view control when the user double-clicks an item with the right mouse button. This notification message is sent in the form of a WM_NOTIFY message.
This notification is identical to the standard NM_RDBLCLK notification except that, in version 4.71 and later, the list view supplies an NMLISTVIEW structure instead of an NMHDR structure for the lParam.
NM_RELEASEDCAPTURE
lpnmh = (LPNMHDR) lParam;
Notifies a list view control's parent window that the control is releasing mouse capture. This notification is sent in the form of a WM_NOTIFY message.
Version 4.71.
NM_RETURN
lpnmh = (LPNMHDR) lParam;
Notifies a list view control's parent window that the control has the input focus and that the user has pressed the ENTER key. NM_RETURN is sent in the form of a WM_NOTIFY message.
NM_SETFOCUS
lpnmh = (LPNMHDR) lParam;
Notifies a list view control's parent window that the control has received the input focus. NM_SETFOCUS is sent in the form of a WM_NOTIFY message.
This section contains information about the structures used with list view controls.
typedef struct tagLVBKIMAGE
{
ULONG ulFlags;
HBITMAP hbm;
LPTSTR pszImage;
UINT cchImageMax;
int xOffsetPercent;
int yOffsetPercent;
} LVBKIMAGE, FAR *LPLVBKIMAGE;
Contains information about the background image of a list view control. This structure is used for both setting and retrieving background image information.
| LVBKIF_SOURCE_NONE | The list view control has no background image. |
| LVBKIF_SOURCE_HBITMAP | Not currently implemented. |
| LVBKIF_SOURCE_URL | The pszImage member contains the URL of the background image. |
| LVBKIF_STYLE_NORMAL | The background image is displayed normally. |
| LVBKIF_STYLE_TILE | The background image will be tiled to fill the entire background of the control. |
This structure is used with the LVM_GETBKIMAGE and LVM_SETBKIMAGE messages.
Version 4.71
typedef struct _LVCOLUMN {
UINT mask;
int fmt;
int cx;
LPTSTR pszText;
int cchTextMax;
int iSubItem;
#if (_WIN32_IE >= 0x0300)
int iImage;
int iOrder;
#endif
} LVCOLUMN, FAR *LPLVCOLUMN;
Contains information about a column in report view. This structure is used both for creating and manipulating columns. This structure supersedes the LV_COLUMN structure.
| LVCF_FMT | The fmt member is valid. |
| LVCF_IMAGE | Version 4.70. The iImage member is valid. |
| LVCF_ORDER | Version 4.70. The iOrder member is valid. |
| LVCF_SUBITEM | The iSubItem member is valid. |
| LVCF_TEXT | The pszText member is valid. |
| LVCF_WIDTH | The cx member is valid. |
| LVCFMT_BITMAP_ON_RIGHT | Version 4.70. The bitmap appears to the right of text. This does not affect an image from an image list assigned to the header item. |
| LVCFMT_CENTER | Text is centered. |
| LVCFMT_COL_HAS_IMAGES | Version 4.70. The header item contains an image in the image list. |
| LVCFMT_IMAGE | Version 4.70. The item displays an image from an image list. |
| LVCFMT_LEFT | Text is left-aligned. |
| LVCFMT_RIGHT | Text is right-aligned. |
The leftmost column in a list view control must be left-aligned.
This structure is used with the LVM_GETCOLUMN, LVM_SETCOLUMN, LVM_INSERTCOLUMN, and LVM_DELETECOLUMN messages.
typedef struct tagLVFINDINFO
{
UINT flags;
LPCTSTR psz;
LPARAM lParam;
POINT pt;
UINT vkDirection;
} LVFINDINFO, FAR* LPFINDINFO;
Contains information used to search for a list view item. This structure is the same as the LV_FINDINFO structure but has been renamed to fit standard naming conventions.
| LVFI_PARAM | Searches based on the lParam member. The lParam member of the matching item's LVITEM structure must match the lParam member of this structure. If this value is specified, all other values are ignored. |
| LVFI_PARTIAL | Checks to see if the item text begins with the string pointed to by the psz member. This value implies use of LVFI_STRING. |
| LVFI_STRING | Searches based on the item text. Unless additional values are specified, the item text of the matching item must exactly match the string pointed to by the psz member. |
| LVFI_WRAP | Continues the search at the beginning if no match is found. |
| LVFI_NEARESTXY | Finds the item nearest to the position specified in the pt member, in the direction specified by the vkDirection member. |
typedef struct _LVHITTESTINFO {
POINT pt;
UINT flags;
int iItem;
int iSubItem;
} LVHITTESTINFO, FAR *LPLVHITTESTINFO;
Has been extended to accommodate subitem hit-testing. The LVHITTESTINFO structure contains information about a hit test. It is used in association with the LVM_HITTEST and LVM_SUBITEMHITTEST messages and their related macros. This structure supersedes the LV_HITTESTINFO structure.
| LVHT_ABOVE | The position is above the control's client area. |
| LVHT_BELOW | The position is below the control's client area. |
| LVHT_NOWHERE | The position is inside the list view control's client window, but it is not over a list item. |
| LVHT_ONITEMICON | The position is over a list view item's icon. |
| LVHT_ONITEMLABEL | The position is over a list view item's text. |
| LVHT_ONITEMSTATEICON | The position is over the state image of a list view item. |
| LVHT_TOLEFT | The position is to the left of the list view control's client area. |
| LVHT_TORIGHT | The position is to the right of the list view control's client area. |
You can use LVHT_ABOVE, LVHT_BELOW, LVHT_TOLEFT, and LVHT_TORIGHT to determine whether to scroll the contents of a list view control. Two of these values may be combined. For example, if the position is above and to the left of the client area, you could use both LVHT_ABOVE and LVHT_TOLEFT.
You can test for LVHT_ONITEM to determine whether a specified position is over a list view item. This value is a bitwise-OR operation on LVHT_ONITEMICON, LVHT_ONITEMLABEL, and LVHT_ONITEMSTATEICON.
typedef struct _LVITEM {
UINT mask;
int iItem;
int iSubItem;
UINT state;
UINT stateMask;
LPTSTR pszText;
int cchTextMax;
int iImage;
LPARAM lParam;
#if (_WIN32_IE >= 0x0300)
int iIndent;
#endif
} LVITEM, FAR *LPLVITEM;
Specifies or receives the attributes of a list view item. This structure has been updated to support a new mask value (LVIF_INDENT) that enables item indenting. This structure supersedes the LV_ITEM structure.
| LVIF_TEXT | The pszText member is valid or must be filled in. |
| LVIF_IMAGE | The iImage member is valid or must be filled in. |
| LVIF_INDENT | The iIndent member is valid or must be filled in. |
| LVIF_NORECOMPUTE | The control will not generate LVN_GETDISPINFO to retrieve text information if it receives a LVM_GETITEM message. Instead, the pszText member will contain LPSTR_TEXTCALLBACK. |
| LVIF_PARAM | The lParam member is valid or must be filled in. |
| LVIF_STATE | The state member is valid or must be filled in. |
| LVIF_DI_SETITEM | The operating system should store the requested list item information and not ask for it again. This flag is used only with the LVN_GETDISPINFO notification message. |
Bits 0 through 7 of this member contain the item state flags. This can be one or more of the item state values.
Bits 8 through 11 of this member specify the one-based overlay image index. Both the full-sized icon image list and the small icon image list can have overlay images. The overlay image is superimposed over the item's icon image. If these bits are zero, the item has no overlay image. To isolate these bits, use the LVIS_OVERLAYMASK mask. To set the overlay image index in this member, you should use the INDEXTOOVERLAYMASK macro. The image list's overlay images are set with the ImageList_SetOverlayImage function.
Bits 12 through 15 of this member specify the state image index. The state image is displayed next to an item's icon to indicate an application-defined state. If these bits are zero, the item has no state image. To isolate these bits, use the LVIS_STATEIMAGEMASK mask. To set the state image index, you should use the INDEXTOSTATEIMAGEMASK macro. The state image index specifies the index of the image in the state image list that should be drawn. The state image list is specified with the LVM_SETIMAGELIST message.
This member allows you to modify one or more item states without having to retrieve all of the item states first. For example, setting this member to LVIS_SELECTED and state to zero will cause the item's selection state to be cleared, but none of the other states will be affected.
To retrieve or modify all of the states, set this member to (UINT)-1.
If the structure is receiving item attributes, this member is the address of the buffer that receives the item text.
If this member is the I_IMAGECALLBACK value, the parent window is responsible for storing the index. In this case, the list view control sends the parent an LVN_GETDISPINFO notification message to get the index when it needs to display the image.
The LVITEM structure is used with a number of messages, including LVM_GETITEM, LVM_SETITEM, LVM_INSERTITEM, and LVM_DELETEITEM.
typedef struct tagNMITEMACTIVATE{
NMHDR hdr;
int iItem;
int iSubItem;
UINT uNewState;
UINT uOldState;
UINT uChanged;
POINT ptAction;
LPARAM lParam;
UINT uKeyFlags;
} NMITEMACTIVATE, FAR *LPNMITEMACTIVATE;
Contains information about an LVN_ITEMACTIVATE notification message.
| LVKF_ALT | The ALT key is pressed. |
| LVKF_CONTROL | The CTRL key is pressed. |
| LVKF_SHIFT | The SHIFT key is pressed. |
Version 4.71
typedef struct tagNMLISTVIEW{
NMHDR hdr;
int iItem;
int iSubItem;
UINT uNewState;
UINT uOldState;
UINT uChanged;
POINT ptAction;
LPARAM lParam;
} NMLISTVIEW, FAR *LPNMLISTVIEW;
Contains information about a list view notification message. This structure is the same as the NM_LISTVIEW structure but has been renamed to fit standard naming conventions.
Version 4.70
typedef struct tagNMLVCACHEHINT {
NMHDR hdr;
int iFrom;
int iTo;
} NMLVCACHEHINT, *PNMLVCACHEHINT;
Contains information used to update the cached item information for use with a virtual list view.
Version 4.70
typedef struct tagNMLVCUSTOMDRAW {
NMCUSTOMDRAW nmcd;
COLORREF clrText;
COLORREF clrTextBk;
#if (_WIN32_IE >= 0x0400)
int iSubItem;
#endif
} NMLVCUSTOMDRAW, *LPNMLVCUSTOMDRAW;
Contains information specific to an NM_CUSTOMDRAW notification message sent by a list view control.
Version 4.70
typedef struct tagLVDISPINFO {
NMHDR hdr;
LVITEM item;
} NMLVDISPINFO, FAR *LPNMLVDISPINFO;
Contains information about an LVN_GETDISPINFO or LVN_SETDISPINFO notification message. This structure is the same as the LV_DISPINFO structure but has been renamed to fit standard naming conventions.
| LVIF_IMAGE | The iImage member specifies, or is to receive, the index of the item's icon in the image list. |
| LVIF_STATE | The state member specifies, or is to receive, the state of the item. |
| LVIF_TEXT | The pszText member specifies the new item text or the address of a buffer that is to receive the item text. |
typedef struct _NMLVFINDITEM {
NMHDR hdr;
int iStart;
LVFINDINFO lvfi;
} NMLVFINDITEM, *PNMLVFINDITEM;
Contains information the owner needs to find items requested by a virtual list view control. This structure is used with the LVN_ODFINDITEM notification message.
Version 4.70
typedef struct tagNMLVGETINFOTIP{
NMHDR hdr;
DWORD dwFlags;
LPTSTR pszText;
int cchTextMax;
int iItem;
int iSubItem;
LPARAM lParam;
} NMLVGETINFOTIP, *LPNMLVGETINFOTIP;
Contains and receives list view item information needed to display a tooltip for an item. This structure is used with the LVN_GETINFOTIP notification message.
Version 4.71
typedef struct tagLVKEYDOWN {
NMHDR hdr;
WORD wVKey;
UINT flags;
} NMLVKEYDOWN, FAR *LPNMLVKEYDOWN;
Contains information used in processing the LVN_KEYDOWN notification message. This structure is the same as the LV_KEYDOWN structure but has been renamed to fit standard naming conventions.
typedef struct tagNMLVODSTATECHANGE {
NMHDR hdr;
int iFrom;
int iTo;
UINT uNewState;
UINT uOldState;
} NMLVODSTATECHANGE, FAR *LPNMLVODSTATECHANGE;
Structure that contains information for use in processing the LVN_ODSTATECHANGED notification message.
Version 4.70
© 1997 Microsoft Corporation. All rights reserved. Terms of Use.