Поделиться через


Элементы управления диалогового окна (C++)

Элементы управления можно добавить в диалоговое окно с помощью вкладки "Редактор диалогов" в окне панели элементов, которая позволяет выбрать нужный элемент управления и перетащить его в диалоговое окно. По умолчанию окно панели элементов устанавливается для автоматического скрытия. Он отображается как вкладка в левом поле интерфейса решения при открытии Редактора диалогов. Однако окно Панель инструментов можно закрепить на месте, нажав кнопку "Авто скрыть" в правом верхнем углу окна. Дополнительные сведения о том, как управлять поведением этого окна, см. в разделе "Управление окнами".

Самый быстрый способ добавления элементов управления в диалоговое окно, изменения положения существующих элементов управления или перемещения элементов управления из одного диалогового окна в другое — использовать метод перетаскивания. Позиция элемента управления обозначается пунктирной линией, пока элемент не будет вставлен в диалоговое окно. При добавлении элемента управления в диалоговое окно с методом перетаскивания элемент управления получает стандартную высоту, соответствующую этому типу элемента управления.

При добавлении элемента управления в диалоговое окно или его перемещении окончательное размещение может определяться направляющими, полями или сеткой макета, если она включена.

После добавления элемента управления в диалоговое окно можно изменить свойства, такие как его подпись в окне свойств. Вы также можете выбрать несколько элементов управления и изменить их свойства одновременно.

Дополнительные сведения о редакторе диалоговых окон см. в статьях «Добавление, изменение или удаление элементов управления», «Макет элементов управления» и «Определение доступа к элементам управления и значениям».

Дополнительные сведения об элементах управления и диалоговых окнах см. в разделах "Классы элементов управления", "Классы диалогового окна" и "Стили полосы прокрутки".

Стандартные элементы управления, доступные на панели элементов с событиями по умолчанию:

Имя элемента управления Событие по умолчанию
Кнопка управления BN_CLICKED
Элемент управления "Флажок" BN_CLICKED
Элемент управления «Combo Box» CBN_SELCHANGE
Изменение элемента управления Изменить_EN
Групповой блок (неприменимо)
Элемент управления List Box LBN_SELCHANGE
Элемент управления "Переключатель" BN_CLICKED
Элемент управления "Статический текст" (неприменимо)
Управление изображением (неприменимо)
Элемент управления Rich Edit 2.0 Изменить_EN
Элемент управления полосой прокрутки NM_THEMECHANGED

Примечание.

Дополнительные сведения об использовании элемента управления RichEdit 1.0 с MFC см. в разделе "Использование элемента управления RichEdit 1.0" с помощью MFC и примеров элементов управления rich Edit.

Общие элементы управления Windows, доступные на панели элементов для обеспечения расширенных функциональных возможностей:

Имя элемента управления Событие по умолчанию
Элемент управления ползунка NM_CUSTOMDRAW
Управление вращением UDN_DELTAPOS
Контроль хода NM_CUSTOMDRAW
Управление горячими клавишами NM_OUTOFMEMORY
Элемент управления "Список" Изменение_Элемента_LVN
Элемент управления "Дерево" TVN_SELCHANGE
Элемент управления TAB TCN_SELCHANGE
Элемент управления анимацией ACN_START
Элемент управления "Выбор даты и времени" DTN_DATETIMECHANGE
Элемент управления "Календарь месяца" MCN_SELCHANGE
Контроль IP-адресов Изменение_Поля_IPN
Расширенный элемент управления Combo Box
Пользовательский элемент управления TTN_GETDISPINFO

Пользовательские элементы управления

Редактор диалогов позволяет использовать существующие настраиваемые или пользовательские элементы управления в шаблоне диалогового окна.

Примечание.

Пользовательские элементы управления в этом смысле не следует путать с элементами ActiveX. Элементы ActiveX иногда называются пользовательскими элементами управления OLE. Кроме того, не путайте эти элементы управления с пользовательскими элементами управления в Windows.

Эта функция предназначена для использования элементов управления, отличных от элементов управления, предоставляемых Windows. Во время выполнения элемент управления связан с классом Window (не так же, как класс C++). Более распространенный способ выполнить ту же задачу — установить любой элемент управления, например статический элемент управления, в диалоговом окне. Затем во время выполнения в функции OnInitDialog удалите этот элемент управления и замените его собственным пользовательским элементом управления.

Примечание.

Это старый метод. Сегодня рекомендуется в большинстве случаев написать элемент ActiveX или подкласс общего элемента управления Windows.

Для таких кастомных элементов управления вы ограничены следующими:

  • Установка местоположения в диалоговом окне.

  • Ввод заголовка.

  • Определение имени класса Windows элемента управления, так как код приложения должен зарегистрировать элемент управления по этому имени.

  • Ввод 32-разрядного шестнадцатеричного значения, задающего стиль элемента управления.

  • Настройка расширенного стиля.

Требования

Win32

См. также

Редактор диалоговых окон