Виділений фрагмент в багатих редагувати елемент керування

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

Щоб визначити поточне виділення в елементі керування для форматованого тексту, використовувати EM_EXGETSEL повідомлення. Щоб встановити виділений, використання EM_EXSETSEL повідомлення. CHARRANGE структура використовується з обох повідомлень і визначає діапазон символів. Для отримання відомостей про вміст з поточного виділення, ви можете використовувати EM_SELECTIONTYPE повідомлення.

Застосунок може виявити, коли виділений фрагмент змінює обробкою повідомлення про EN_SELCHANGE . Повідомлення про визначає SELCHANGE структури, що містить інформацію про нові виділення. Форматується керування надсилає це сповіщення про повідомлення, лише якщо ввімкнути його за допомогою EM_SETEVENTMASK повідомлення.

За промовчанням багаті редагувати елемент керування відображає та приховує виділення, коли вона отримує і втрачає фокус. Можна відобразити або приховати виділення в будь-який час за допомогою EM_HIDESELECTION повідомлення. Наприклад, програма може надати діалогове вікно пошуку для пошуку тексту в елементі керування для форматованого тексту. Застосунок може вибрати відповідний текст без закриття діалогового вікна, в цьому випадку вона повинні використовувати EM_HIDESELECTION повідомлення виділіть виділення.

Як і в елементах керування, можна вказати стиль вікна ES_NOHIDESEL, щоб запобігти Приховування виділення, коли воно втрачає фокус елемента керування для форматованого тексту. Також можна EM_HIDESELECTION повідомлення змінити стиль вікна ES_NOHIDESEL, після створення елемента керування форматованого тексту.

Замість того, щоб за допомогою EM_EXGETSEL і EM_EXSETSEL повідомлень, отримання та встановити виділений фрагмент за допомогою EM_GETSEL і EM_SETSEL редагувати елемент керування повідомленнями. EM_GETSEL повідомлення пакети двох показників 16-розрядних символів в 32-бітної повернутого значення і, таким чином, працює тільки для виділення, повністю у перші 64 K. Тим не менше, багаті редагувати елемент керування ніколи не буде містити більше 32 K тексту, якщо ви продовжити цю межу за допомогою EM_EXLIMITTEXT повідомлення. Для діапазонів, які виходять за рамки першої 64K текст повертається повідомлення EM_GETSEL-1.

Index