Arranging, Sorting, and Finding
You can use list view messages to arrange and sort items and to find items
based on their attributes or positions. Arranging repositions items to align on a
grid, but the indexes of the items do not change. Sorting changes the sequence
of items (and their corresponding indexes) and then repositions them
accordingly. You can arrange items only in icon and small icon views, but you can sort
items in any view.
To arrange items, use the
LVM_ARRANGE message. You can ensure that items are arranged at all times by specifying
the LVS_AUTOARRANGE window style.
To sort items, use the
LVM_SORTITEMS message. When you sort using this message, you specify an application-defined
callback function that the list view control calls to compare the relative
order of any two items. The control passes to the comparison function the item
data associated with each of the two items. The item data is the value that was
specified in the
lParam member of the item's
LV_ITEM structure when it was inserted into the list. By specifying the appropriate
item data and supplying an appropriate comparison function, you can sort items
by their label, by any subitem, or by any other property. Note that sorting
items does not reorder the corresponding subitems. Thus, if any subitems are not
callback items, you must regenerate the subitems after sorting.
You can ensure that a list view control is always sorted by specifying the
LVS_SORTASCENDING or LVS_SORTDESCENDING window style. Controls with these styles
use the label text of the items to sort them in ascending or descending order.
You cannot supply a comparison function when using these window styles. If a
list view control has either of these styles, an LVM_INSERTITEM message will fail
if you try to insert an item that has LPSTR_TEXTCALLBACK as the
pszText member of its
LV_ITEM structure.
You can find a list view item with specific properties by using the
LVM_FINDITEM message. You can find a list view item that is in a specified state and bears
a specified geometrical relationship to a given item by using the
LVM_GETNEXTITEM message. For example, you can retrieve the next selected item to the right of
a specified item.
- Software for developers
-
Delphi Components
.Net Components
Software for Android Developers
- More information resources
-
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
- Databases for Amazon shops developers
-
Amazon Categories Database
Browse Nodes Database