Виділений фрагмент

Виділений фрагмент є елементом списку, користувач вибрав; виділений текст з'являється в полі Вибір поля зі списком. Однак, у випадку з простим списком або розкривного списку, що випадає, виділено лише один форми користувачів введення в полі зі списком. Користувач також може ввести текст у виділення поля.

Виділений фрагмент буде визначено COLUMN індекс елемента виділеного списку. Заявку можна встановити і отримати його в будь-який час. Батьків вікна або діалоговому вікні процедура отримує сповіщення, коли користувач змінює поточне виділення для поля зі списком. Батько вікна або діалоговому вікні не повідомили, коли зміни додатків виділення.

Коли створюється поле зі списком, немає ні поточного виділення. Це також вірно для простих або розкривного списком, якщо користувач має редагувати вміст поля виділення. Щоб встановити виділений фрагмент, програми надсилання повідомлення CB_SETCURSEL полі зі списком. Програми можна також використовувати CB_SELECTSTRING повідомлення встановити виділений елемент списку, в яких рядок, що починається зі вказаного рядка. Для визначення поточного виділення, програма надсилає повідомлення CB_GETCURSEL полі зі списком. Якщо виділений фрагмент відсутній, це повідомлення повертає CB_ERR.

Коли користувач змінює поточне виділення в полі зі списком, батьків вікна або діалоговому вікні порядок отримує WM_COMMAND повідомлення з повідомлення про CBN_SELCHANGE параметра wParam , Word вищого порядку. Це повідомлення не надсилання повідомлення виділений встановлюється за допомогою CB_SETCURSEL повідомлення.

Розкривного зі списком або розкривному списку надсилання сповіщень CBN_CLOSEUP батьків вікна або діалоговому вікні порядок Закриття розкривного списку. Якщо користувач змінив виділений фрагмент, поле зі списком також посилає повідомлення CBN_SELCHANGE, закриття розкривного списку. Для виконання певного процесу кожного разу, коли користувач вибирає елемента списку, може обробляти сповіщення або CBN_SELCHANGE, або CBN_CLOSEUP. Як правило, буде чекати CBN_CLOSEUP сповіщення перед обробкою зміни в поточне виділення. Це може бути особливо важливо, якщо потрібна значна кількість обробки.

Програма також вдалося обробити повідомлення про CBN_SELENDOK і CBN_SELENDCANCEL. Система надсилає CBN_SELENDOK, коли користувач вибирає елемента списку або вибере певний елемент і потім закриття списку. Це вказує на те, як користувач закінчить та обробки виділення. CBN_SELENDCANCEL надсилається, коли користувач вибере певний елемент, а потім вибирає інший елемент керування, натискає клавішу escape, хоча розкривний список відкритий або закриття діалогового вікна. Це означає, що вибір користувача можна ігнорувати. У простих списком CBN_SELENDOK надсилається до кожного повідомлення, яке CBN_SELCHANGE. Якщо стиль вікна WS_EX_NOPARENTNOTIFY вказується для поля зі списком, система не надсилати листи з CBN_SELENDOK і CBN_SELENDCANCEL.

У простих списком система надсилає повідомлення про CBN_DBLCLK , коли користувач double-clicks елемента списку. В комбінованому полі або списку одним клацанням приховання списку, так що це не можливо, щоб двічі клацнути елемент.