Класс CJumpList
Список CJumpList
ярлыков отображается при щелчке правой кнопкой мыши значка на панели задач.
Синтаксис
class CJumpList;
Участники
Открытые конструкторы
Имя | Описание |
---|---|
CJumpList::CJumpList | Формирует объект CJumpList . |
CJumpList::~CJumpList | Уничтожает объект CJumpList . |
Имя | Описание |
---|---|
CJumpList::AbortList | Прервана транзакция создания списка без фиксации. |
CJumpList::AddDestination | Перегружен. Добавляет назначение в список. |
CJumpList::AddKnownCategory | Добавляет известную категорию в список. |
CJumpList::AddTask | Перегружен. Добавляет элементы в каноническую категорию "Задачи". |
CJumpList::AddTasks | Добавляет элементы в каноническую категорию "Задачи". |
CJumpList::AddTaskSeparator | Добавляет разделитель между задачами. |
CJumpList::ClearAll | Удаляет все задачи и назначения, добавленные в текущий экземпляр CJumpList до сих пор. |
CJumpList::ClearAllDestinations | Удаляет все назначения, которые были добавлены в текущий экземпляр CJumpList до сих пор. |
CJumpList::CommitList | Завершает транзакцию создания списка и фиксирует указанный список в связанном хранилище (реестр в данном случае).) |
CJumpList::GetDestinationList | Извлекает указатель интерфейса на список назначения. |
CJumpList::GetMaxSlots | Извлекает максимальное количество элементов, включая заголовки категорий, которые могут отображаться в меню назначения вызывающего приложения. |
CJumpList::GetRemovedItems | Возвращает массив элементов, представляющих удаленные назначения. |
CJumpList::InitializeList | Начинает транзакцию создания списка. |
CJumpList::SetAppID | Задает идентификатор пользовательской модели приложения для созданного списка. |
Иерархия наследования
Требования
Заголовок: afxadv.h
CJumpList::~CJumpList
Уничтожает объект CJumpList
.
~CJumpList();
CJumpList::AbortList
Прервана транзакция создания списка без фиксации.
void AbortList();
Замечания
Вызов этого метода имеет тот же эффект, что и уничтожение CJumpList
без вызова CommitList
.
CJumpList::AddDestination
Добавляет назначение в список.
BOOL AddDestination(
LPCTSTR lpcszCategoryName,
LPCTSTR strDestinationPath);
BOOL AddDestination(
LPCTSTR strCategoryName,
IShellItem* pShellItem);
BOOL AddDestination(
LPCTSTR strCategoryName,
IShellLink* pShellLink);
Параметры
lpcszCategoryName
Указывает имя категории. Если указанная категория не существует, она будет создана.
strDestinationPath
Указывает путь к целевому файлу.
strCategoryName
Указывает имя категории. Если указанная категория не существует, она будет создана.
pShellItem
Указывает элемент оболочки, представляющий добавляемое назначение.
pShellLink
Указывает ссылку оболочки, представляющую добавляемое назначение.
Возвращаемое значение
Замечания
Экземпляр CJumpList
внутренне накапливает добавленные назначения, а затем фиксирует их в CommitList
.
CJumpList::AddKnownCategory
Добавляет известную категорию в список.
BOOL AddKnownCategory(KNOWNDESTCATEGORY category);
Параметры
category
Указывает известный тип категории. Может быть либо KDC_RECENT, либо KDC_KNOWN.
Возвращаемое значение
Замечания
Известные категории — это категории "Часто" и "Последние", которые мы автоматически вычисляем для каждого приложения, которое используется SHAddToRecentDocs
(или косвенно использует его в качестве оболочки, будет вызывать ее от имени приложения в некоторых сценариях).
CJumpList::AddTask
Добавляет элементы в каноническую категорию "Задачи".
BOOL AddTask(
LPCTSTR strTargetExecutablePath,
LPCTSTR strCommandLineArgs,
LPCTSTR strTitle,
LPCTSTR strIconLocation,
int iIconIndex);
BOOL AddTask(IShellLink* pShellLink);
Параметры
strTargetExecutablePath
Указывает путь целевой задачи.
strCommandLineArgs
Задает аргументы командной строки исполняемого файла, указанного strTargetExecutablePath.
strTitle
Имя задачи, отображаемое в списке назначения.
strIconLocation
Расположение значка, которое будет отображаться в списке назначения вместе с заголовком.
iIconIndex
Индекс значка.
pShellLink
Ссылка оболочки, представляющая задачу для добавления.
Возвращаемое значение
Замечания
Экземпляр накапливает указанные CJumpList
задачи и добавляет их в список назначения во время CommitList
. Элементы задачи будут отображаться в категории в нижней части меню назначения приложения. Эта категория имеет приоритет над всеми другими категориями при заполнении пользовательского интерфейса.
CJumpList::AddTasks
Добавляет элементы в каноническую категорию "Задачи".
BOOL AddTasks(IObjectArray* pObjectCollection);
Параметры
pObjectCollection
Коллекция задач, которые необходимо добавить.
Возвращаемое значение
Замечания
Экземпляр CJumpList накапливает указанные задачи и добавляет их в список назначения во время CommitList
. Элементы задачи будут отображаться в категории в нижней части меню назначения приложения. Эта категория имеет приоритет над всеми другими категориями при заполнении пользовательского интерфейса.
CJumpList::AddTaskSeparator
Добавляет разделитель между задачами.
BOOL AddTaskSeparator();
Возвращаемое значение
Ненулевое значение, если оно успешно, 0, если это не так.
CJumpList::CJumpList
Формирует объект CJumpList
.
CJumpList(BOOL bAutoCommit = TRUE);
Параметры
bAutoCommit
Если этот параметр имеет значение FALSE, список не фиксируется автоматически в деструкторе.
CJumpList::ClearAll
Удаляет все задачи и назначения, добавленные в текущий экземпляр CJumpList
до сих пор.
void ClearAll();
Замечания
Этот метод очищает и освобождает все данные и внутренние интерфейсы.
CJumpList::ClearAllDestinations
Удаляет все назначения, которые были добавлены в текущий экземпляр CJumpList до сих пор.
void ClearAllDestinations();
Замечания
Вызовите эту функцию, если необходимо удалить все назначения, которые были добавлены до сих пор в текущем сеансе сборки списка назначения и снова добавить другие назначения. Если внутренний ICustomDestinationList
инициализирован, он остается живым.
CJumpList::CommitList
Завершает транзакцию создания списка и фиксирует указанный список в связанном хранилище (реестр в данном случае).
BOOL CommitList();
Возвращаемое значение
Замечания
Фиксация атомарна. Ошибка будет возвращена, если фиксация завершается ошибкой. При CommitList
вызове будет удален текущий список удаленных элементов. Вызов этого метода сбрасывает объект, чтобы у него не было активной транзакции создания списка. Чтобы обновить список, BeginList
необходимо вызвать еще раз.
CJumpList::GetDestinationList
Извлекает указатель интерфейса на список назначения.
ICustomDestinationList* GetDestinationList();
Возвращаемое значение
Замечания
Если список переходов не был инициализирован или был зафиксирован или прерван, возвращаемое значение будет иметь значение NULL.
CJumpList::GetMaxSlots
Извлекает максимальное количество элементов, включая заголовки категорий, которые могут отображаться в меню назначения вызывающего приложения.
UINT GetMaxSlots() const;
Возвращаемое значение
Замечания
Приложения могут сообщать только о нескольких элементах и заголовках категорий, объединенных до этого значения. Если вызовы AppendCategory
, AppendKnownCategory
или AddUserTasks
превышение этого числа, они будут возвращать сбой.
CJumpList::GetRemovedItems
Возвращает массив элементов, представляющих удаленные назначения.
IObjectArray* GetRemovedItems();
Возвращаемое значение
Замечания
Удаленные назначения извлекаются во время инициализации списка переходов. При создании нового списка назначения приложения, как ожидается, сначала обработают удаленный список назначений, очищая данные отслеживания для любого элемента, возвращенного перечислителем удаленного списка. Если приложение пытается предоставить элемент, который был только что удален в транзакции, которую запускает текущий вызов BeginList
, метод вызывает повторно добавленный элемент, чтобы убедиться, что приложения уважают удаленный список.
CJumpList::InitializeList
Начинает транзакцию создания списка.
BOOL InitializeList();
Возвращаемое значение
Замечания
Этот метод не требуется вызывать явным образом, если вы не хотите получить указатель на ICustomDestinationList
использование GetDestinationList
, количество доступных слотов или GetMaxSlots
список удаленных элементов с помощью GetRemovedItems
.
CJumpList::SetAppID
Задает идентификатор пользовательской модели приложения для созданного списка.
void SetAppID(LPCTSTR strAppID);
Параметры
strAppID
Строка, указывающая идентификатор пользовательской модели приложения.