Практическое руководство. Добавление, изменение и удаление элементов управления (C++)

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

Вкладка "Редактор диалогов" отображается в окне панели инструментов при работе в редакторе диалогов. Вы также можете настроить окно панели элементов для упрощения использования. Дополнительные сведения см. в разделе "Использование панели элементов " и "Показать" или скрыть окно панели элементов.

Совет

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

Добавление элементов управления

Добавление элемента управления

  1. Убедитесь, что диалоговое окно с вкладками открыто как текущий документ в окне редактора. Если диалоговое окно не является текущим документом, вкладка "Редактор диалогов" не отображается на панели элементов.

  2. На вкладке "Редактор диалогов" окна панели элементов выберите нужный элемент управления, а затем выполните следующие действия:

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

    • Перетащите элемент управления из окна панели элементов в расположение в диалоговом окне. Затем можно переместить элемент управления вокруг или изменить его размер и фигуру.

    • Дважды щелкните элемент управления в окне панели элементов и появится в диалоговом окне. Переместите элемент управления в нужное расположение.

Добавление нескольких элементов управления

  1. Удерживая клавишу CTRL , выберите элемент управления в окне панели элементов .

  2. Отпустите клавиши CTRL и выберите диалоговое окно столько раз, сколько вы хотите добавить конкретный элемент управления.

  3. Нажмите клавишу ESC , чтобы остановить размещение элементов управления.

Размер элемента управления при добавлении

  1. Выберите элемент управления в окне панели элементов .

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

  3. Нажмите и удерживайте кнопку мыши, чтобы привязать левый верхний угол элемента управления в диалоговом окне. Затем перетащите курсор вправо и вниз, пока элемент управления не будет нужным.

    Примечание.

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

  4. Отпустите кнопку мыши. Элемент управления поселится в диалоговом окне в указанном размере.

Совет

Вы можете изменить размер элемента управления после его удаления в диалоговое окно, переместив маркеры размера на границе элемента управления. Дополнительные сведения см. в разделе "Изменение размера отдельных элементов управления".

Добавление пользовательского элемента управления

В диалоговое окно можно добавить настраиваемые элементы управления. Щелкните значок пользовательского элемента управления на панели элементов и перетащите его в диалоговое окно. Чтобы добавить Syslink элемент управления, добавьте пользовательский элемент управления, а затем измените свойство Syslinkкласса элемента управления на . Это действие приведет к обновлению свойств и показу Syslink свойств элемента управления. Сведения о классе оболочки MFC см. в разделе CLinkCtrl.

Изменение элементов управления

Изменение свойств элемента управления или элементов управления

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

    Примечание.

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

  2. В окно свойств измените свойства элемента управления.

    Примечание.

    Если задать свойство Bitmap для кнопки, переключателя или элемента управления проверка поле равно True, стиль BS_BITMAP реализуется для элемента управления. Дополнительные сведения см. в разделе "Стили кнопок". Пример связывания растрового изображения с элементом управления см. в разделе CButton::SetBitmap. Растровые изображения не будут отображаться в элементе управления во время входа в редактор диалогового окна.

Отмена изменений свойств элемента управления

  1. Убедитесь, что элемент управления имеет фокус в редакторе диалогов.

  2. Перейдите в меню "Изменить".> Если фокус не включен в элемент управления, команда Отмена будет недоступна.

Определение переменной-члена для элемента управления диалогового окна (кроме кнопки)

Примечание.

Этот процесс применяется только к элементам управления диалоговым окнам в проекте MFC. Проекты ATL должны использовать диалоговое окно "Новые сообщения Windows" и "Обработчики событий". Дополнительные сведения см. в разделе "Типы сообщений, связанные с объектами пользовательского интерфейса", редактирование обработчика сообщений и определение обработчика сообщений для Рефлексия сообщения.

  1. В редакторе диалогов выберите элемент управления.

  2. При нажатии клавиши CTRL дважды щелкните элемент управления диалогового окна.

    Откроется мастер добавления переменной элементов.

  3. Введите соответствующие сведения в мастере добавления переменной элементов. Дополнительные сведения см. в разделе "Диалоговое окно обмена данными".

  4. Нажмите кнопку "ОК ", чтобы вернуться в редактор диалогов.

Совет

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

Вы также можете использовать вкладку "Переменные-члены" в мастере классов MFC, чтобы добавить новые переменные-члены для указанного класса и просмотреть уже определенные переменные члена.

Удаление элементов управления

В диалоговом окне выберите элемент управления, а затем нажмите клавишу DELETE или выберите меню "Изменить>удаление".

Другие проблемы

Устранение неполадок

После добавления общего элемента управления или полного редактирования в диалоговое окно он не будет отображаться при тестировании диалогового окна. Или само диалоговое окно не появится. Например:

  1. Создайте проект Win32, изменив параметры приложения, чтобы создать приложение Windows (а не консольное приложение).

  2. В представлении ресурсов дважды щелкните RC-файл.

  3. В диалоговом окне дважды щелкните поле "О программе".

  4. Добавьте элемент управления IP-адресом в диалоговое окно.

  5. Сохраните и перестроите все.

  6. Выполните программу.

  7. В меню справки диалогового окна выберите команду "О программе" и не увидите диалоговое окно.

В настоящее время редактор диалоговых окон не автоматически добавляет код в проект при перетаскивании следующих распространенных элементов управления или расширенных элементов управления редактирования в диалоговом окне. Visual Studio не предоставляет ошибку или предупреждение при возникновении этой проблемы. Чтобы исправить эту проблему, добавьте код для элемента управления вручную.

Элемент управления анимацией
Настраиваемый элемент управления;
Элемент управления "Выбор даты и времени"
Расширенный прямоугольник со списком

Горячий ключ
Элемент управления IP-адресами
Элемент управления списком
Месячный календарь

Элемент управления "Ход выполнения"
Элемент управления Rich Edit 2.0
Элемент управления "Расширенные изменения"
Элемент управления ползунка

Элемент управления спином
Элемент управления TAB
Элемент управления "Дерево"

Чтобы использовать общие элементы управления в диалоговом окне, необходимо вызвать InitCommonControlsEx или AFXInitCommonControls перед созданием диалогового окна.

Чтобы использовать элементы управления RichEdit, необходимо вызвать LoadLibrary. Дополнительные сведения см. в статье "О расширенных элементах управления редактированием" в пакете SDK для Windows и обзоре элемента управления "Расширенные изменения".

Примечание.

Чтобы использовать элемент управления RichEdit с MFC, необходимо сначала вызвать AfxInitRichEdit2 , чтобы загрузить элемент управления RichEdit 2.0 (RICHED20.DLL) или вызвать AfxInitRichEdit , чтобы загрузить старый элемент управления RichEdit 1.0 (RICHED32.DLL).

Вы можете использовать текущий класс CRichEditCtrl со старым элементом управления RichEdit 1.0, но CRichEditCtrl предназначен только для поддержки элемента управления RichEdit 2.0. Так как RichEdit 1.0 и RichEdit 2.0 похожи, большинство методов будут работать. Однако существуют некоторые различия между элементами управления 1.0 и 2.0, поэтому некоторые методы могут работать неправильно или вообще не работать.

Вставка элементов ActiveX

Среда разработки Visual Studio позволяет вставлять элементы ActiveX в диалоговое окно. Дополнительные сведения см. в разделе "Элементы activeX MFC" и контейнеры элементов activeX.

Диалоговое окно "Вставка элемента activeX" позволяет вставлять элементы ActiveX в диалоговое окно при использовании редактора диалогов. Это диалоговое окно содержит следующие свойства:

Свойство Description
Элемент управления ActiveX Отображает список элементов ActiveX.

Вставка элемента управления из этого диалогового окна не создает класс оболочки. Если вам нужен класс-оболочка, используйте представление классов для создания, см. статью "Добавление класса".

Если элемент activeX не отображается в этом диалоговом окне, попробуйте установить элемент управления в соответствии с инструкциями поставщика.
Путь Отображает файл, в котором найден элемент activeX.

Внимание

Распространение всех элементов ActiveX в системе может быть незаконным. Обратитесь к лицензионному соглашению о программном обеспечении, которое установило элементы управления или обратитесь к компании по программному обеспечению.

Добавление элемента управления ActiveX

  1. Откройте диалоговое окно в редакторе диалогов.

  2. Щелкните правой кнопкой мыши в любом месте в тексте диалогового окна и выберите "Вставить элемент ActiveX Control".

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

  3. Выберите элемент управления, который вы хотите добавить в диалоговое окно, и нажмите кнопку "ОК".

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

Совет

Контекстное меню в редакторе диалогов можно использовать для быстрого добавления зарегистрированных элементов ActiveX в диалоговое окно или добавления элементов ActiveX в окно панели элементов для простого доступа.

Изменение свойств элемента управления ActiveX

Элементы ActiveX, предоставляемые независимыми поставщиками, могут быть оснащены собственными свойствами и характеристиками. Эти свойства отображаются в окне "Свойства ". Все страницы свойств, созданные писателями элемента управления ActiveX, отображаются в диалоговом окне "Страницы свойств". (Чтобы просмотреть Страница свойств для определенного элемента управления ActiveX нажмите кнопку "Страница свойств" в окно свойств).

  • Выберите элемент управления ActiveX и перейдите на страницу свойств представления>меню, чтобы просмотреть свойства. Внесите изменения по мере необходимости на страницу свойств.

    Различные вкладки отображаются на странице свойств элемента управления ActiveX в зависимости от листов свойств, которые входят в элемент управления ActiveX.

Примечание.

Эта процедура применяется к использованию страницы свойств для редактирования элементов ActiveX. Вы также можете просматривать и изменять свойства ActiveX в новом окне свойств .

Требования

Win32

См. также

Управление элементами управления диалогового окна
Практическое руководство. Элементы управления макетом
Практическое руководство. Определение управления доступом и значениями