На главную

On-line справка по Win32 API

Написать письмо
БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО!
Список всех статей A-B-C-D-E-F-G-H-I-J-K-L-M-N-O-P-Q-R-S-T-U-V-W-X-Y-Z | Скачать Вниз

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.


Пригласи друзей и счет твоего мобильника всегда будет положительным!
Предыдущая статья
 
Сайт Народ.Ру Интернет
Следующая статья
Пригласи друзей и счет твоего мобильника всегда будет положительным!

Организация, Сортировка, и Обнаружение



Вы можете использовать сообщения вида списка, чтобы размещать и сортировать пункты и, чтобы находить пункты основанные в их атрибутах или позициях. Устраивая repositions пункты, чтобы выравниваться в сетке, но индексы пунктов не изменяются. Сортируя изменяет последовательность пунктов (и их соответствующие индексы) и затем repositions он соответственно. Вы можете разместить пункты только в иконных и небольших иконных видах, но Вы можете отсортировать пункты с любой точки зрения.

Для того, чтобы размещать пункты, используйте сообщение LVM_ARRANGE. Вы можете проверить, что пункты размещаются в любое время определяя стиль окна LVS_AUTOARRANGE.
Для того, чтобы сортировать пункты, используйте сообщение LVM_SORTITEMS. Когда Вы сортируете использование этого сообщения, Вы определяете определенную прикладную функцию возврата, что управление вида списка вызывает, чтобы сравнивать относительный порядок любых двух пунктов. Управление проходит в функцию сравнения данные пункта связанные каждыми двумя пунктами. Данные пункта является величиной, которая была определена в элементе lParam структуры пункта LV_ITEM когда было включено в список. Определяя подходящие данные пункта и поставляя подходящую функцию сравнения, Вы можете отсортировать пункты их этикеткой, любым подэлементом, или любым другим свойством. Отметьте, что сортируя пункты не преобразовывает соответствующие подэлементы. Таким образом, если любые подэлементы не являются пунктами возврата, Вы должны регенерировать подэлементы после сортировки.

Вы можете проверить, что управление вида списка всегда отсортировано определением LVS_SORTASCENDING или стиль окна LVS_SORTDESCENDING. Элементы управления с этим использованием стилей текст этикетки пунктов, чтобы сортировать их в возрастающем или сходить порядка. Вы не можете поставить сравнению функцию при использовании этих стилей окна. Если управление вида списка имеет любой из этих стилей, сообщение LVM_INSERTITEM потерпит неудачу если Вы пытаетесь включать пункт, который имеет LPSTR_TEXTCALLBACK как элемент pszText своей структуры LV_ITEM.

Вы можете найти пункт вида списка со специфическими свойствами используя сообщение LVM_FINDITEM. Вы можете найти пункт вида списка, который - в определенном состоянии и несет определенное geometrical отношение в данный пункт используя сообщение LVM_GETNEXTITEM. Например, Вы можете извлечь затем выбранный пункт вправо от определенного пункта.


Вверх Version 1.3, Oct 26 2010 © 2007, 2010, mrhx Вверх
 mrhx software  Русский перевод OpenGL  Русский перевод Win32 API
 
Используются технологии uCoz