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


Панели управления

Панель управления — это общее имя панелей инструментов, строк состояния и диалоговых панелей. Классы CToolBar, CStatusBar, CDialogBar, COleResizeBar и CReBar наследуются от класса CControlBar, который реализует их общие функциональные возможности.

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

  • Панели инструментов в классе CToolBar

  • Индикаторы состояния в классе CStatusBar

  • Диалоговые панели в классе CDialogBar

  • Арматура, в классе CReBar

Это важно

По состоянию на MFC версии 4.0, панели инструментов, панели состояния и подсказки реализуются с помощью системных функций, реализованных в comctl32.dll вместо предыдущей реализации, типичной для MFC. В версии 6.0 MFC была добавлена CReBar, которая также упаковывает функциональность comctl32.dll.

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

Панели управления

Панели управления значительно повышают удобство использования программы, предоставляя быстрый доступ к выполнению команд в один шаг. Класс CControlBar предоставляет общие функциональные возможности всех панелей инструментов, строк состояния и диалоговых панелей. CControlBar обеспечивает возможность размещения управляющей панели в окне родительского кадра. Поскольку управляющая панель обычно является дочерним окном родительского окна рамки, она является "одноуровневым элементом" для клиентского представления или MDI-клиента окна рамки. Объект контрольной панели использует сведения о клиентском прямоугольнике родительского окна для собственного размещения. Затем он изменяет оставшийся прямоугольник родительского окна, чтобы представление клиента или окно клиента MDI заполняло остальную часть окна клиента.

Замечание

Если кнопка на панели управления не имеет обработчика COMMAND или UPDATE_COMMAND_UI , платформа автоматически отключает кнопку.

Панели инструментов

Панель инструментов — это панель управления, которая отображает строку битовых кнопок, выполняющих команды. Нажатие кнопки панели инструментов эквивалентно выбору элемента меню; он вызывает тот же обработчик, сопоставленный с элементом меню, если этот элемент меню имеет тот же идентификатор, что и кнопка панели инструментов. Кнопки можно настроить для отображения и поведения в виде кнопок, переключателей или флажков. Панель инструментов обычно выравнивается по верхней части окна кадра, но панель инструментов MFC может "докироваться" к любой стороне родительского окна или плавать в собственном мини-кадровом окне. Панель инструментов также может "плавать", и ее размер можно изменить и перетащить с помощью мыши. Панель инструментов также может отображать подсказки, так как пользователь перемещает указатель мыши на кнопки панели инструментов. Подсказка — это небольшое всплывающее окно, которое кратко описывает функцию кнопки.

Замечание

По состоянию на MFC версии 4.0 класс CToolBar использует общий элемент управления панели инструментов Windows. A CToolBar содержит CToolBarCtrl. Однако старые панели инструментов по-прежнему поддерживаются. См. статью ToolBars.

Строки состояния

Строка состояния — это панель управления, содержащая области вывода текста или индикаторы. Области вывода обычно используются в качестве строк сообщений и в качестве индикаторов состояния. Примеры строк сообщений включают строки справки команд, которые кратко объясняют выбранную команду меню или панели инструментов в самой левой области строки состояния по умолчанию, созданной мастером приложений MFC. Примеры индикаторов состояния включают в себя SCROLL LOCK, NUM LOCK и другие клавиши. Строки состояния обычно выровнены по нижнему краю рамочного окна. См. класс CStatusBar и класс CStatusBarCtrl.

Диалоговые панели

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

Арматура

Панель реечной арматуры — это элемент управления, который предоставляет сведения о закреплении, макете, состоянии и сохраняемости для управления элементами реечной арматуры. Объект рейбар может содержать различные дочерние окна, как правило, другие элементы управления, включая поля редактирования, панели инструментов и списки. Элемент управления типа «Rebar» может показывать свои дочерние окна по указанному растровому рисунку. Его можно автоматически или вручную изменить, щелкнув или перетащив панель захвата. См. класс CReBar.

См. также

Элементы пользовательского интерфейса