Visual C++. Описание стандартных классов
Страница 3.


CButton::GetState
UINT GetState() const;
Возвращаемое значение
Определяет текущее состояние кнопки. Для выделения конкретной информации о состоянии кнопки могут использоваться следующие маски:
"sectiontableheader"0x0003 - определяет состояние флажков и переключателей. Значение 0 говорит о том, что флажок сброшен, 1 - установлен, а 2 - что кнопка находится в неопределенном состоянии;
"sectiontableheader"0x0004 - определяет выделение кнопки. Ненулевое значение означает, что данная кнопка выделена, то есть пользователь нажал и удерживает не ней левую кнопку мыши;
"sectiontableheader"0x0008 - определяет фокус ввода. Ненулевое значение означает, что данная кнопка имеет фокус ввода.
Описание
Позволяет определить состояние кнопки.
SetCheck
void SetCheck(int nCheck);
Аргументы
"sectiontableheader"nCheck - определяет состояние кнопки. Этот аргумент может принимать одно из следующих значений:
"sectiontableheader"0 - кнопка сброшена;
"sectiontableheader"1 - кнопка установлена;
"sectiontableheader"2 - состояние кнопки не определено. Это значение состояния кнопки может быть установлено только в том случае, когда она имеет стиль BS_3STATE или стиль BS_AUTO3STATE.
Описание
Устанавливает или сбрасывает переключатели или флажки. Эта функция не оказывает никакого действия на простые кнопки.
CCmdUI
Класс CCmdUI используется в функциях обработки сообщения ON_UPDATE_COMMAND_UI в классах, производных от класса CCmdTarget. Когда пользователь раскрывает меню в своем приложении, приложение должно определить состояние каждой его команды, каждая из которых может быть доступной или недоступной. Эта информация предоставляется функциями обработки сообщения ON_UPDATE_COMMAND_UI. Прототипы этих функций и соответствующие им макросы карты сообщений могут быть созданы с использованием мастера ClassWizard. При раскрытии меню приложение ищет и вызывает функции обработки сообщения ON_UPDATE_COMMAND_UI, передавая им в качестве аргумента объект класса CCmdUI. Пользователь вызывает для данного объекта такие функции, как Enable или Check, позволяющие приложению правильно установить состояние для каждой команды меню. На месте команд меню могут выступать кнопки панели инструментов или другие объекты пользовательского интерфейса. При этом все они будут использовать одну и ту же функцию обработки сообщения ON_UPDATE_COMMAND_UI. В таблице П2.3 содержатся сведения о реакции отдельных элементов управления на вызов функций-членов класса CCmdUI.
Таблица П2.3. Воздействие функций класса CCmdUI на отдельные элементы управления
Элемент управления Enable SetCheck SetRadio SetText
Команда меню Делает доступной или недоступной Устанавливает или снимает флажок (v) Устанавливает или снимает переключатель (.) Устанавливает текст элемента управления
Кнопка панели инструментов Делает доступной или недоступной Выделяет, снимает выделение или переводит в неопределенное состояние Работает аналогично функции SetCheck Не используется
Панель строки состояния Делает текст видимым или невидимым Устанавливает выступающую или нормальную рамку Работает аналогично функции SetCheck Устанавливает текст в панели
Обычная кнопка в CDialogBar Делает доступной или недоступной Устанавливает или снимает флажок Работает аналогично функции SetCheck Устанавливает текст в кнопке
Обычный элемент управления в CDialogBar Делает доступной или недоступной Не используется Не используется Устанавливает текст окна
Класс CCmdUI не имеет базового класса. Описание данного класса содержится в файле заголовка afxwin.h.
ContinueRouting
void ContinueRouting();
Описание
Данная функция сообщает процедуре обработки сообщений, что обработка данного сообщения не завершена в данной функции и требуется найти обработчик данного сообщения, который завершит процедуру его обработки. Функцию ContinueRouting необходимо вызывать в функциях обработки сообщения ON_COMMAND_EX в том случае, когда они возвращают значение FALSE.
Enable
virtual void Enable(BOOL bOn = TRUE);
Аргументы
"sectiontableheader"bOn - если данный аргумент имеет значение TRUE, то соответствующий элемент управления становится доступным. В противном случае он становится недоступным.
Описание
Данная функция позволяет делать доступным или недоступным элемент управления.
SetCheck
virtual void SetCheck(int nCheck = 1);
Аргументы
"sectiontableheader"nCheck - определяет состояние флажка. Если данный аргумент равен 0, то флажок сбрасывается, если - 1, то флажок устанавливается, а если значение данного аргумента равно 2, то флажок устанавливается в неопределенное состояние.
Описание
Данная функция позволяет установить состояние команды меню или кнопки панели инструментов. В неопределенное состояние может быть установлена только кнопка панели инструментов.
SetText
virtual void SetText(LPCTSTR lpszText);
Аргументы
"sectiontableheader"lpszText - указатель на текстовую строку, заканчивающуюся нулем.
Описание
Данная функция вызывается приложением для вывода текста в пользовательском элементе управления.
CControlBar
Класс CControlBar является базовым для таких классов, как CStatusBar, CToolBar, CDialogBar, CReBar и COleResizeBar. Панель управления представляет собой окно, обычно выровненное по левой или правой стороне основного окна приложения. Оно может содержать дочерние окна, которые могут быть как элементами управления, имеющими свой дескриптор окна HWND, то есть обычными окнами Windows способными посылать и принимать сообщения, или другими элементами управления не являющимися окнами и управляемыми функциями класса приложения или класса главного окна приложения. Примером элементов управления, имеющих свой дескриптор окна, могут служить просмотровые окна списка и окна редактора. Примером элементов управления не имеющих своего дескриптора окна являются панели строки состояния или кнопки панели инструментов. Окна панели управления обычно являются дочерними окнами главного окна приложения и используются наравне с рабочей областью однооконного приложения или окнами документов многооконного приложения. Для своего позиционирования объект класса CControlBar использует информацию о размерах рабочей области родительского окна. После этого он информирует родительское окно о том, сколько места осталось в его рабочей области. Описание данного класса содержится в файле заголовка afxext.h.
EnableDocking
void EnableDocking(DWORD dwStyle);
Аргументы
"sectiontableheader"dwStyle - определяет возможность фиксации панели управления на одной из сторон окна и определяет стороны, на которых панель управления может фиксироваться. Может быть комбинацией следующих флагов:
       "sectiontableheader"CBRS_ALIGN_TOP - разрешает фиксацию на верхней стороне рабочей области окна;
       "sectiontableheader"CBRS_ALIGN_BOTTOM - разрешает фиксацию на нижней стороне рабочей области окна;
       "sectiontableheader"CBRS_ALIGN_LEFT - разрешает фиксацию на левой стороне рабочей области окна;
       "sectiontableheader"CBRS_ALIGN_RIGHT - разрешает фиксацию на правой стороне рабочей области окна;
       "sectiontableheader"CBRS_ALIGN_ANY - разрешает фиксацию на любой стороне рабочей области окна;
       "sectiontableheader"CBRS_FLOAT_MULTI - разрешает использование нескольких плавающих панелей управления в одном окне.
"sectiontableheader"Если данный аргумент равен 0 (то есть не указан ни один флаг) панель управления не фиксируется.
Описание
Использование данной функции разрешает фиксацию панелей управления. Указанные положения фиксации должны соответствовать положениям фиксации, определенным в главном окне приложения, в противном случае панель управления не может быть зафиксирована в данном окне.
 
« Предыдущая статья   Следующая статья »