Класс CWindow

Этот класс предоставляет методы для управления окном.

Важно!

Этот класс и его члены нельзя использовать в приложениях, выполняемых в среде выполнения Windows.

Синтаксис

class CWindow

Участники

Открытые конструкторы

Имя Описание
CWindow::CWindow Конструктор.

Открытые методы

Имя Описание
CWindow::ArrangeIconicWindows Упорядочивает все свернутые дочерние окна.
CWindow::Attach Присоединяет окно к объекту CWindow .
CWindow::BeginPaint Подготавливает окно к рисованию.
CWindow::BringWindowToTop Выводит окно в начало порядка Z.
CWindow::CenterWindow Центрируется окно с заданным окном.
CWindow::ChangeClipboardChain Удаляет окно из цепочки зрителей буфера обмена.
CWindow::CheckDlgButton Изменяет состояние проверка указанной кнопки.
CWindow::CheckRadioButton Проверяет указанную переключатель.
CWindow::ChildWindowFromPoint Извлекает дочернее окно, содержащее указанную точку.
CWindow::ChildWindowFromPointEx Извлекает определенный тип дочернего окна, содержащего указанную точку.
CWindow::ClientToScreen Преобразует координаты клиента в координаты экрана.
CWindow::Create Создает окно.
CWindow::CreateCaret Создает новую фигуру для системного ухода.
CWindow::CreateGrayCaret Создает серый прямоугольник для системы.
CWindow::CreateSolidCaret Создает сплошной прямоугольник для системы.
CWindow::DeferWindowPos Обновления указанную структуру с несколькими окнами для указанного окна.
CWindow::DestroyWindow Уничтожает окно, связанное CWindow с объектом.
CWindow::Detach Отсоединяет окно от CWindow объекта.
CWindow::DlgDirList Заполняет поле списка именами всех файлов, соответствующих указанному пути или имени файла.
CWindow::DlgDirListComboBox Заполняет поле со списком имена всех файлов, соответствующих указанному пути или имени файла.
CWindow::DlgDirSelect Извлекает текущее выделение из списка.
CWindow::DlgDirSelectComboBox Извлекает текущий выбор из поля со списком.
CWindow::DragAcceptFiles Регистрирует, принимает ли окно перетаскиваемые файлы.
CWindow::DrawMenuBar Перерисовывает строку меню окна.
CWindow::EnableScrollBar Включает или отключает стрелки полосы прокрутки.
CWindow::EnableWindow Включает или отключает входные данные.
CWindow::EndPaint Отмечает завершение рисования.
CWindow::FlashWindow Окно однократно мигает.
CWindow::GetClientRect Извлекает координаты клиентской области.
CWindow::GetDC Извлекает контекст устройства для клиентской области.
CWindow::GetDCEx Извлекает контекст устройства для клиентской области и разрешает параметры вырезки.
CWindow::GetDescendantWindow Извлекает указанное окно потомка.
CWindow::GetDlgControl Извлекает интерфейс для указанного элемента управления.
CWindow::GetDlgCtrlID Извлекает идентификатор окна (только для дочерних окон).
CWindow::GetDlgHost Извлекает указатель на интерфейс к контейнеру размещения элемента управления ATL.
CWindow::GetDlgItem Извлекает указанное дочернее окно.
CWindow::GetDlgItemInt Преобразует текст элемента управления в целое число.
CWindow::GetDlgItemText Извлекает текст элемента управления.
CWindow::GetExStyle Извлекает расширенные стили окон.
CWindow::GetFont Извлекает текущий шрифт окна.
CWindow::GetHotKey Определяет горячий ключ, связанный с окном.
CWindow::GetIcon Извлекает значок большого или маленького окна.
CWindow::GetLastActivePopup Извлекает последнее активное всплывающее окно.
CWindow::GetMenu Извлекает меню окна.
CWindow::GetNextDlgGroupItem Извлекает предыдущий или следующий элемент управления в группе элементов управления.
CWindow::GetNextDlgTabItem Извлекает предыдущий или следующий элемент управления, имеющий WS_TABSTOP стиль.
CWindow::GetParent Извлекает немедленное родительское окно.
CWindow::GetScrollInfo Извлекает параметры полосы прокрутки.
CWindow::GetScrollPos Извлекает позицию поля прокрутки.
CWindow::GetScrollRange Извлекает диапазон полосы прокрутки.
CWindow::GetStyle Извлекает стили окон.
CWindow::GetSystemMenu Создает копию системного меню для изменения.
CWindow::GetTopLevelParent Извлекает окно родительского или владельца верхнего уровня.
CWindow::GetTopLevelWindow Извлекает окно владельца верхнего уровня.
CWindow::GetTopWindow Извлекает дочернее окно верхнего уровня.
CWindow::GetUpdateRect Извлекает координаты наименьшего прямоугольника, в который полностью входит область обновления .
CWindow::GetUpdateRgn Извлекает регион обновления и копирует его в указанный регион.
CWindow::GetWindow Извлекает указанное окно.
CWindow::GetWindowContextHelpId Извлекает идентификатор контекста справки окна.
CWindow::GetWindowDC Извлекает контекст устройства для всего окна.
CWindow::GetWindowLong Извлекает 32-разрядное значение с указанным смещением в дополнительную память окна.
CWindow::GetWindowLongPtr Извлекает сведения об указанном окне, включая значение с указанным смещением в дополнительную память окна.
CWindow::GetWindowPlacement Извлекает состояние и позиции отображения.
CWindow::GetWindowProcessID Извлекает идентификатор процесса, создавшего окно.
CWindow::GetWindowRect Извлекает ограничивающие размеры окна.
CWindow::GetWindowRgn Получает копию области окна окна.
CWindow::GetWindowText Извлекает текст окна.
CWindow::GetWindowTextLength Извлекает длину текста окна.
CWindow::GetWindowThreadID Извлекает идентификатор потока, создавшего указанное окно.
CWindow::GetWindowWord Извлекает 16-разрядное значение с указанным смещением в дополнительную память окна.
CWindow::GotoDlgCtrl Задает фокус клавиатуры элементу управления в диалоговом окне.
CWindow::HideCaret Скрывает системный уход.
CWindow::HiliteMenuItem Выделяет или удаляет выделение из элемента меню верхнего уровня.
CWindow::Invalidate Делает недействительной всю клиентскую область.
CWindow::InvalidateRect Отменяет область клиента в указанном прямоугольнике.
CWindow::InvalidateRgn Отменяет область клиента в указанном регионе.
CWindow::IsChild Определяет, является ли указанное окно дочерним окном.
CWindow::IsDialogMessage Определяет, предназначено ли сообщение для указанного диалогового окна.
CWindow::IsDlgButtonChecked Определяет состояние проверка кнопки.
CWindow::IsIconic Определяет, свернуто ли окно.
CWindow::IsParentDialog Определяет, является ли родительское окно элемента управления диалоговым окном.
CWindow::IsWindow Определяет, идентифицирует ли указанный дескриптор окна.
CWindow::IsWindowEnabled Определяет, включено ли окно для входных данных.
CWindow::IsWindowUnicode Определяет, является ли указанное окно собственным окном Юникода.
CWindow::IsWindowVisible Определяет состояние видимости окна.
CWindow::IsZoomed Определяет, развернуто ли окно.
CWindow::KillTimer Уничтожает событие таймера.
CWindow::LockWindowUpdate Отключает или включает рисование в окне.
CWindow::MapWindowPoints Преобразует набор точек из координатного пространства окна в координатное пространство другого окна.
CWindow::MessageBox Отображает окно сообщения.
CWindow::ModifyStyle Изменяет стили окон.
CWindow::ModifyStyleEx Изменяет стили расширенных окон.
CWindow::MoveWindow Изменяет размер и положение окна.
CWindow::NextDlgCtrl Задает фокус клавиатуры следующим элементом управления в диалоговом окне.
CWindow::OpenClipboard Открывает буфер обмена.
CWindow::PostMessage Помещает сообщение в очередь сообщений, связанную с потоком, создающим окно. Возвращается без ожидания обработки сообщения потоком.
CWindow::PrevDlgCtrl Задает фокус клавиатуры предыдущему элементу управления в диалоговом окне.
CWindow::Print Запрашивает, что окно будет вырисовано в указанном контексте устройства.
CWindow::PrintClient Запрашивает, чтобы клиентская область окна была нарисована в указанном контексте устройства.
CWindow::RedrawWindow Обновления указанный прямоугольник или регион в клиентской области.
CWindow::ReleaseDC Освобождает контекст устройства.
CWindow::ResizeClient Изменяет размер окна.
CWindow::ScreenToClient Преобразует координаты экрана в координаты клиента.
CWindow::ScrollWindow Прокручивает указанную клиентская область.
CWindow::ScrollWindowEx Прокручивает указанную клиентская область с дополнительными функциями.
CWindow::SendDlgItemMessage Отправляет сообщение в элемент управления.
CWindow::SendMessage Отправляет сообщение в окно и не возвращается, пока процедура окна не обработала сообщение.
CWindow::SendMessageToDescendants Отправляет сообщение в указанные окна потомков.
CWindow::SendNotifyMessage Отправляет сообщение в окно. Если окно было создано вызывающим потоком, SendNotifyMessage не возвращается, пока процедура окна не обработала сообщение. В противном случае он возвращается немедленно.
CWindow::SetActiveWindow Активирует окно.
CWindow::SetCapture Отправляет все последующие входные данные мыши в окно.
CWindow::SetClipboardViewer Добавляет окно в цепочку просмотра буфера обмена.
CWindow::SetDlgCtrlID Изменяет идентификатор окна.
CWindow::SetDlgItemInt Изменяет текст элемента управления в строковое представление целочисленного значения.
CWindow::SetDlgItemText Изменяет текст элемента управления.
CWindow::SetFocus Задает фокус ввода в окно.
CWindow::SetFont Изменяет текущий шрифт окна.
CWindow::SetHotKey Связывает горячий ключ с окном.
CWindow::SetIcon Изменяет значок большого или маленького окна.
CWindow::SetMenu Изменяет текущее меню окна.
CWindow::SetParent Изменяет родительское окно.
CWindow::SetRedraw Задает или очищает флаг перерасчета.
CWindow::SetScrollInfo Задает параметры полосы прокрутки.
CWindow::SetScrollPos Изменяет положение поля прокрутки.
CWindow::SetScrollRange Изменяет диапазон полосы прокрутки.
CWindow::SetTimer Создает событие таймера.
CWindow::SetWindowContextHelpId Задает идентификатор контекста справки окна.
CWindow::SetWindowLong Задает 32-разрядное значение с указанным смещением в дополнительную память окна.
CWindow::SetWindowLongPtr Изменяет атрибут указанного окна, а также задает значение с указанным смещением в дополнительной памяти окна.
CWindow::SetWindowPlacement Задает состояние и позиции отображения.
CWindow::SetWindowPos Задает размер, позицию и порядок Z.
CWindow::SetWindowRgn Задает область окна окна.
CWindow::SetWindowText Изменяет текст окна.
CWindow::SetWindowWord Задает 16-разрядное значение с указанным смещением в дополнительную память окна.
CWindow::ShowCaret Отображает системную подсказку.
CWindow::ShowOwnedPopups Отображает или скрывает всплывающие окна, принадлежащие окну.
CWindow::ShowScrollBar Отображает или скрывает полосу прокрутки.
CWindow::ShowWindow Задает состояние отображения окна.
CWindow::ShowWindowAsync Задает состояние отображения окна, созданного другим потоком.
CWindow::UpdateWindow Обновляет клиентскую область.
CWindow::ValidateRect Проверяет клиентская область в указанном прямоугольнике.
CWindow::ValidateRgn Проверяет клиентская область в указанном регионе.
CWindow::WinHelp Запускает справку Windows.

Открытые операторы

Имя Описание
CWindow::operator HWND Преобразует объект в CWindow объект HWND.
CWindow::operator = HWND Назначает объектуCWindow.

Открытые члены данных

Имя Описание
CWindow::m_hWnd Дескриптор окна, связанного CWindow с объектом.
CWindow::rcDefault Содержит измерения окна по умолчанию.

Замечания

CWindow предоставляет базовые функции для управления окном в ATL. CWindow Многие из методов просто упаковывают один из функций API Win32. Например, сравните прототипы для CWindow::ShowWindow и ShowWindow:

Метод CWindow Функция Win32
BOOL ShowWindow( int nCmdShow ); BOOL ShowWindow( HWND hWnd , int nCmdShow );

CWindow::ShowWindow вызывает функцию ShowWindow Win32, передав CWindow::m_hWnd в качестве первого параметра. Каждый CWindow метод, который напрямую упаковывает функцию Win32, передает m_hWnd элемент. Поэтому большая часть CWindow документации будет ссылаться на пакет SDK для Windows.

Примечание.

Не каждая функция Win32, связанная с окном, упаковывается CWindowв оболочку, и не каждый CWindow метод упаковывает функцию Win32.

CWindow::m_hWnd сохраняет окно HWND , определяющее окно. Присоединен HWND к объекту при выполнении:

  • Укажите конструктор HWND в CWindowконструкторе.

  • Вызовите процедуру CWindow::Attach.

  • Используйте CWindow.s operator =.

  • Создание или подкласс окна с помощью одного из следующих классов, производных от CWindow:

CWindowImpl Позволяет создать новое окно или подкласс существующего окна.

CContainedWindow Реализует окно, содержащееся в другом объекте. Можно создать новое окно или подкласс существующего окна.

CDialogImpl Позволяет создать модальное или безрежимное диалоговое окно.

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

Требования

Заголовок.atlwin.h

CWindow::ArrangeIconicWindows

Упорядочивает все свернутые дочерние окна.

UINT ArrangeIconicWindows() throw();

Замечания

См ArrangeIconicWindows . в пакете SDK для Windows.

CWindow::Attach

Присоединяет окно, hWndNew определенное CWindow объектом.

void Attach(HWND hWndNew) throw();

Параметры

hWndNew
[in] Дескриптор окна.

Пример

//The following example attaches an HWND to the CWindow object
HWND hWnd  = ::GetDesktopWindow();
CWindow myWindow;
myWindow.Attach(hWnd);

CWindow::BeginPaint

Подготавливает окно к рисованию.

HDC BeginPaint(LPPAINTSTRUCT lpPaint) throw();

Замечания

См BeginPaint . в пакете SDK для Windows.

Пример

//The following example attaches an HWND to the CWindow object
//and calls CWindow::BeginPaint() and CWindow::EndPaint() in the 
// WM_PAINT handler of a CWindowImpl-derived class
LRESULT CMyCtrl::OnPaint(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, 
   BOOL& /*bHandled*/)
{
   CWindow myWindow;
   myWindow.Attach(m_hWnd);
   PAINTSTRUCT ps;
   HDC hDC  = myWindow.BeginPaint(&ps);
   //Use the hDC as much as you want
   ::Rectangle(hDC, 0, 0, 50, 50);

   myWindow.EndPaint(&ps);

   return 0;
}

CWindow::BringWindowToTop

Выводит окно в начало порядка Z.

BOOL BringWindowToTop() throw();

Замечания

См BringWindowToTop . в пакете SDK для Windows.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::BringWindowToTop() to bring the window to the top 
//of the z-order.

CWindow myWindow;
myWindow.Attach(hWnd);
BOOL bOnTop = myWindow.BringWindowToTop();

//check if we could bring the window on top
if(bOnTop)
{
   //Do something
}

CWindow::CenterWindow

Центрируется окно с заданным окном.

BOOL CenterWindow(HWND hWndCenter = NULL) throw();

Параметры

hWndCenter
[in] Дескриптор окна, в котором по центру. Если этот параметр имеет значение NULL (значение по умолчанию), метод будет задан hWndCenter в родительском окне окна, если это дочернее окно. В противном случае оно будет задано hWndCenter в окне владельца окна.

Возвращаемое значение

TRUE Значение , если окно успешно центрировано; FALSEв противном случае .

Пример

//The following example attaches various HWNDs to the CWindow objects 
//and calls CWindow::CenterWindow() for each of them

CWindow childWindow, popupWindow, overlappedWindow;

childWindow.Attach(hWndChild); //a window created with WS_CHILD style
childWindow.CenterWindow();    //This will center the child 
                               //window against its Parent window

popupWindow.Attach(hWndPopup); //a window created with WS_POPUP style
popupWindow.CenterWindow();    //This will center the popup window 
                               //against its Owner window

overlappedWindow.Attach(hWndOverlapped); //a window created with 
                                         //WS_OVERLAPPED style
overlappedWindow.CenterWindow(::GetDesktopWindow()); //This will center 
                       //the overlapped window against the DeskTop window

CWindow::ChangeClipboardChain

Удаляет окно из цепочки зрителей буфера обмена.

BOOL ChangeClipboardChain(HWND hWndNewNext) throw();

Замечания

См ChangeClipboardChain . в пакете SDK для Windows.

CWindow::CheckDlgButton

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

BOOL CheckDlgButton(int nIDButton, UINT nCheck) throw();

Замечания

См CheckDlgButton . в пакете SDK для Windows.

CWindow::CheckRadioButton

Проверяет указанную переключатель.

BOOL CheckRadioButton(
    int nIDFirstButton,
    int nIDLastButton,
    int nIDCheckButton) throw();

Замечания

См CheckRadioButton . в пакете SDK для Windows.

CWindow::ChildWindowFromPoint

Извлекает дочернее окно, содержащее указанную точку.

HWND ChildWindowFromPoint(POINT point) const throw();

Замечания

См ChildWindowFromPoint . в пакете SDK для Windows.

CWindow::ChildWindowFromPointEx

Извлекает определенный тип дочернего окна, содержащего указанную точку.

HWND ChildWindowFromPoint(POINT point, UINT uFlags) const throw();

Замечания

См ChildWindowFromPointEx . в пакете SDK для Windows.

CWindow::ClientToScreen

Преобразует координаты клиента в координаты экрана.

BOOL ClientToScreen(LPPOINT lpPoint) const throw();
BOOL ClientToScreen(LPRECT lpRect) const throw();

Замечания

См ClientToScreen . в пакете SDK для Windows.

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

CWindow::Create

Создает окно.

HWND Create(
    LPCTSTR lpstrWndClass,
    HWND hWndParent,
    _U_RECT rect = NULL,
    LPCTSTR szWindowName = NULL,
    DWORD dwStyle = 0,
    DWORD dwExStyle = 0,
    _U_MENUorID MenuOrID = 0U,
    LPVOID lpCreateParam = NULL) throw();

Параметры

lpstrWndClass
[in] Указатель на класс окна.

hWndParent
[in] Дескриптор родительского или владельца окна.

rect
[in] Переменная типа _U_RECT , указывающая положение окна. Значение по умолчанию — NULL. Если этот параметр имеет значение NULL, используется значение CWindow::rcDefault .

szWindowName
[in] Указывает имя окна. Значение по умолчанию — NULL.

dwStyle
[in] Стиль окна. Значение по умолчанию равно 0, то есть стиль не указан. Список возможных значений см CreateWindow . в пакете SDK для Windows.

dwExStyle
[in] Стиль расширенного окна. Значение по умолчанию равно 0, что означает, что расширенный стиль не указан. Список возможных значений см CreateWindowEx . в пакете SDK для Windows.

MenuOrID
[in] Переменная типа _U_MENUorID , указывающая дескриптор меню или идентификатор окна. Значение по умолчанию — 0U.

lpCreateParam
Указатель на данные создания окна, содержащиеся в CREATESTRUCT структуре.

Возвращаемое значение

В случае успешного выполнения дескриптор в только что созданное окно, указанное в параметре m_hWnd. В противном случае — NULL.

Замечания

CWindow::rcDefault определяется как __declspec(selectany) RECT CWindow::rcDefault = {CW_USEDEFAULT, CW_USEDEFAULT, 0, 0};.

Дополнительные сведения см CreateWindow . в пакете SDK для Windows.

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

CWindow::CreateCaret

Создает новую фигуру для системного ухода.

BOOL CreateCaret(HBITMAP pBitmap) throw();

Замечания

См CreateCaret . в пакете SDK для Windows.

CWindow::CreateGrayCaret

Создает серый прямоугольник для системы.

BOOL CreateGrayCaret(int nWidth, int nHeight) throw();

Замечания

См CreateCaret . в пакете SDK для Windows.

Передает (HBITMAP) 1 параметр дескриптора растрового изображения функции Win32.

CWindow::CreateSolidCaret

Создает сплошной прямоугольник для системы.

BOOL CreateSolidCaret(int nWidth, int nHeight) throw();

Замечания

См CreateCaret . в пакете SDK для Windows.

Передает (HBITMAP) 0 параметр дескриптора растрового изображения функции Win32.

CWindow::CWindow

Конструктор.

CWindow(HWND hWnd = NULL) throw();

Параметры

hWnd
[in] Дескриптор окна.

Замечания

Инициализирует m_hWnd элемент hWndв , в который по умолчанию используется NULL.

Примечание.

CWindow::CWindow не создает окно. Классы, и CDialogImpl (все из которых являются производными CWindowот) предоставляют метод для создания окна или диалогового окна, которому затем назначаетсяCWindow::m_hWnd. CContainedWindowCWindowImpl Вы также можете использовать функцию CreateWindow Win32.

CWindow::DeferWindowPos

Обновления указанную структуру с несколькими окнами для указанного окна.

HDWP DeferWindowPos(
    HDWP hWinPosInfo,
    HWND hWndInsertAfter,
    int x,
    int y,
    int cx,
    int cy,
    UINT uFlags) throw();

Замечания

См DeferWindowPos . в пакете SDK для Windows.

CWindow::DestroyWindow

Уничтожает окно, связанное CWindow с объектом, и задает m_hWnd значение NULL.

BOOL DestroyWindow() throw();

Замечания

См DestroyWindow . в пакете SDK для Windows.

Он не уничтожает CWindow сам объект.

Пример

  //The following example attaches an HWND to the CWindow object and 
  //calls CWindow::DestroyWindow() to destroy the window

  CWindow myWindow;
  myWindow.Attach(hWndChild);
  //call the CWindow wrappers

  myWindow.DestroyWindow();
  hWndChild = NULL;

CWindow::Detach

Отсоединяется m_hWnd от CWindow объекта и задает m_hWnd значение NULL.

HWND Detach() throw();

Возвращаемое значение

Объект HWND, связанный с объектом CWindow.

Пример

//The following example attaches an HWND to the CWindow object and 
//later detaches the CWindow object from the HWND when no longer needed

CWindow myWindow;
myWindow.Attach(hWnd);

//call CWindow wrappers

//We don't need the C++ object any more, so detach it from the HWND.
myWindow.Detach(); 

CWindow::DlgDirList

Заполняет поле списка именами всех файлов, соответствующих указанному пути или имени файла.

int DlgDirList(
    LPTSTR lpPathSpec,
    int nIDListBox,
    int nIDStaticPath,
    UINT nFileType) throw();

Замечания

См DlgDirList . в пакете SDK для Windows.

CWindow::DlgDirListComboBox

Заполняет поле со списком имена всех файлов, соответствующих указанному пути или имени файла.

int DlgDirListComboBox(
    LPTSTR lpPathSpec,
    int nIDComboBox,
    int nIDStaticPath,
    UINT nFileType) throw();

Замечания

См DlgDirListComboBox . в пакете SDK для Windows.

CWindow::DlgDirSelect

Извлекает текущее выделение из списка.

BOOL DlgDirSelect(
    LPTSTR lpString,
    int nCount,
    int nIDListBox) throw();

Замечания

См DlgDirSelectEx . в пакете SDK для Windows.

CWindow::DlgDirSelectComboBox

Извлекает текущий выбор из поля со списком.

BOOL DlgDirSelectComboBox(
    LPTSTR lpString,
    int nCount,
    int nIDComboBox) throw();

Замечания

См DlgDirSelectComboBoxEx . в пакете SDK для Windows.

CWindow::DragAcceptFiles

Регистрирует, принимает ли окно перетаскиваемые файлы.

void DragAcceptFiles(BOOL bAccept = TRUE);

Замечания

См DragAcceptFiles . в пакете SDK для Windows.

CWindow::DrawMenuBar

Перерисовывает строку меню окна.

BOOL DrawMenuBar() throw();

Замечания

См DrawMenuBar . в пакете SDK для Windows.

CWindow::EnableScrollBar

Включает или отключает стрелки полосы прокрутки.

BOOL EnableScrollBar(UINT uSBFlags, UINT uArrowFlags = ESB_ENABLE_BOTH) throw();

Замечания

См EnableScrollBar . в пакете SDK для Windows.

CWindow::EnableWindow

Включает или отключает входные данные.

BOOL EnableWindow(BOOL bEnable = TRUE) throw();

Замечания

См EnableWindow . в пакете SDK для Windows.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::EnableWindow() to enable and disable the window
//wrapped by the CWindow object

CWindow myWindow;
myWindow.Attach(hWnd);

//The following call enables the window 
//CWindow::EnableWindow() takes TRUE as the default parameter

myWindow.EnableWindow();

if(myWindow.IsWindowEnabled())
{
   //Do something now that the window is enabled

   //Now it's time to disable the window again
   myWindow.EnableWindow(FALSE);
}

CWindow::EndPaint

Отмечает завершение рисования.

void EndPaint(LPPAINTSTRUCT lpPaint) throw();

Замечания

См EndPaint . в пакете SDK для Windows.

Пример

//The following example attaches an HWND to the CWindow object
//and calls CWindow::BeginPaint() and CWindow::EndPaint() in the 
// WM_PAINT handler of a CWindowImpl-derived class
LRESULT CMyCtrl::OnPaint(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, 
   BOOL& /*bHandled*/)
{
   CWindow myWindow;
   myWindow.Attach(m_hWnd);
   PAINTSTRUCT ps;
   HDC hDC  = myWindow.BeginPaint(&ps);
   //Use the hDC as much as you want
   ::Rectangle(hDC, 0, 0, 50, 50);

   myWindow.EndPaint(&ps);

   return 0;
}

CWindow::FlashWindow

Окно однократно мигает.

BOOL FlashWindow(BOOL bInvert) throw();

Замечания

См FlashWindow . в пакете SDK для Windows.

CWindow::GetClientRect

Извлекает координаты клиентской области.

BOOL GetClientRect(LPRECT lpRect) const throw();

Замечания

См GetClientRect . в пакете SDK для Windows.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::GetClientRect() to get the client area rectangle
//of the window

CWindow myWindow;
myWindow.Attach(hWnd);
RECT rc;
myWindow.GetClientRect(&rc);

CWindow::GetDC

Извлекает контекст устройства для клиентской области.

HDC GetDC() throw();

Замечания

См GetDC . в пакете SDK для Windows.

Пример

// The following example attaches a HWND to the CWindow object,
// calls CWindow::GetDC to retrieve the DC of the client
// area of the window wrapped by CWindow Object, and calls
// CWindow::ReleaseDC to release the DC. 

CWindow myWindow;
myWindow.Attach(hWnd);   
HDC hDC = myWindow.GetDC();

// Use the DC

myWindow.ReleaseDC(hDC);
hDC = NULL;

CWindow::GetDCEx

Извлекает контекст устройства для клиентской области и разрешает параметры вырезки.

HDC GetDCEx(HRGN hRgnClip, DWORD flags) throw();

Замечания

См GetDCEx . в пакете SDK для Windows.

CWindow::GetDescendantWindow

Находит окно потомка, указанное заданным заданным идентификатором.

HWND GetDescendantWindow(int nID) const throw();

Параметры

nID
[in] Идентификатор извлекаемого окна-потомка.

Возвращаемое значение

Дескриптор в окне потомка.

Замечания

GetDescendantWindow выполняет поиск всего дерева дочерних окон, а не только непосредственных дочерних окон.

CWindow::GetDlgControl

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

HRESULT GetDlgControl(
    int nID,
    REFIID iid,
    void** ppCtrl) throw();

Параметры

nID
[in] Идентификатор ресурса извлекаемого элемента управления.

iid
[in] Идентификатор интерфейса, который вы хотите получить из элемента управления.

ppCtrl
[out] Указатель на интерфейс.

Возвращаемое значение

Возвращается S_OK при успешном выполнении или любой допустимой ошибке HRESULT. Например, функция возвращаетE_FAIL, если элемент управления, указанный не удается найти, и возвращаетсяE_NOINTERFACE, если элемент управления можно найти, но не поддерживает интерфейс, указанный nID в параметреiid.

Замечания

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

CWindow::GetDlgCtrlID

Извлекает идентификатор окна (только для дочерних окон).

int GetDlgCtrlID() const throw();

Замечания

См GetDlgCtrlID . в пакете SDK для Windows.

CWindow::GetDlgHost

Извлекает указатель на интерфейс к контейнеру размещения элемента управления ATL.

HRESULT GetDlgHost(
    int nID,
    REFIID iid,
    void** ppHost) throw();

Параметры

nID
[in] Идентификатор ресурса извлекаемого элемента управления.

iid
[in] Идентификатор интерфейса, который вы хотите получить из элемента управления.

ppHost
[out] Указатель на интерфейс.

Возвращаемое значение

Возвращает, S_OK если окно, iid указанное контейнером элементов управления, и запрошенный интерфейс можно получить. Возвращает, E_FAIL если окно не является контейнером элементов управления или если запрошенный интерфейс не удалось получить. Если не удалось найти окно с указанным идентификатором, возвращаемое значение равно HRESULT_FROM_WIN32(ERROR_CONTROL_ID_NOT_FOUND).

Замечания

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

CWindow::GetDlgItem

Извлекает указанное дочернее окно.

HWND GetDlgItem(int nID) const throw();

Замечания

См. раздел GetDlgItem в пакете SDK для Windows.

CWindow::GetDlgItemInt

Преобразует текст элемента управления в целое число.

UINT GetDlgItemInt(
    int nID,
    BOOL* lpTrans = NULL,
    BOOL bSigned = TRUE) const throw();

Замечания

См GetDlgItemInt . в пакете SDK для Windows.

CWindow::GetDlgItemText

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

UINT GetDlgItemText(
    int nID,
    LPTSTR lpStr,
    int nMaxCount) const throw();

BOOL GetDlgItemText(
    int nID,
    BSTR& bstrText) const throw();

Замечания

Дополнительные сведения см GetDlgItemText . в пакете SDK для Windows.

Вторая версия этого метода позволяет скопировать текст элемента управления в объект BSTR. Эта версия возвращается TRUE , если текст успешно скопирован; в противном случае FALSE.

CWindow::GetExStyle

Извлекает расширенные стили окон окна.

DWORD GetExStyle() const throw();

Возвращаемое значение

Расширенные стили окна.

Замечания

Чтобы получить обычные стили окон, вызовите GetStyle.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::GetExStyle() to retrieve the extended styles of 
//the window

CWindow myWindow;
myWindow.Attach(hWnd);
DWORD dwExStyles = myWindow.GetExStyle();

CWindow::GetFont

Извлекает текущий шрифт окна, отправив WM_GETFONT сообщение в окно.

HFONT GetFont() const throw();

Возвращаемое значение

Дескриптор шрифта.

CWindow::GetHotKey

Определяет горячий ключ, связанный с окном WM_GETHOTKEY , отправляя сообщение.

DWORD GetHotKey() const throw();

Возвращаемое значение

Код виртуального ключа и модификаторы для горячего ключа, связанного с окном. Список возможных модификаторов см WM_GETHOTKEY . в пакете SDK для Windows. Список стандартных кодов виртуальных ключей см. в разделе Winuser.h.

CWindow::GetIcon

Извлекает дескриптор на значок большого или маленького окна.

HICON GetIcon(BOOL bBigIcon = TRUE) const;

Параметры

bBigIcon
[in] Если TRUE (значение по умолчанию) метод возвращает большой значок. В противном случае возвращается маленький значок.

Возвращаемое значение

Дескриптор значка.

Замечания

GetIcon отправляет WM_GETICON сообщение в окно.

CWindow::GetLastActivePopup

Извлекает последнее активное всплывающее окно.

HWND GetLastActivePopup() const throw();

Замечания

См GetLastActivePopup . в пакете SDK для Windows.

CWindow::GetMenu

Извлекает меню окна.

HMENU GetMenu() const throw();

Замечания

См GetMenu . в пакете SDK для Windows.

CWindow::GetNextDlgGroupItem

Извлекает предыдущий или следующий элемент управления в группе элементов управления.

HWND GetNextDlgGroupItem(HWND hWndCtl, BOOL bPrevious = FALSE) const throw();

Замечания

См GetNextDlgGroupItem . в пакете SDK для Windows.

CWindow::GetNextDlgTabItem

Извлекает предыдущий или следующий элемент управления, имеющий WS_TABSTOP стиль.

HWND GetNextDlgTabItem(HWND hWndCtl, BOOL bPrevious = FALSE) const throw();

Замечания

См GetNextDlgTabItem . в пакете SDK для Windows.

CWindow::GetParent

Извлекает немедленное родительское окно.

HWND GetParent() const throw();

Замечания

См GetParent . в пакете SDK для Windows.

Пример

// The following example attaches a HWND to the CWindow object
// and calls CWindow::GetParent to find out the parent
// window of the window wrapped by CWindow object.

CWindow myWindow;
myWindow.Attach(hWnd);   
HWND hWndParent = myWindow.GetParent();

CWindow::GetScrollInfo

Извлекает параметры полосы прокрутки.

BOOL GetScrollInfo(int nBar, LPSCROLLINFO lpScrollInfo) throw();

Замечания

См GetScrollInfo . в пакете SDK для Windows.

CWindow::GetScrollPos

Извлекает позицию поля прокрутки.

int GetScrollPos(int nBar) const throw();

Замечания

См GetScrollPos . в пакете SDK для Windows.

CWindow::GetScrollRange

Извлекает диапазон полосы прокрутки.

BOOL GetScrollRange(
    int nBar,
    LPINT lpMinPos,
    LPINT lpMaxPos) const throw();

Замечания

См GetScrollRange . в пакете SDK для Windows.

CWindow::GetStyle

Извлекает стили окон окна.

DWORD GetStyle() const throw();

Возвращаемое значение

Стили окна.

Замечания

Чтобы получить расширенные стили окон, вызовите GetExStyle.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::GetStyle() to retrieve the styles of the window

CWindow myWindow;
myWindow.Attach(hWnd);
DWORD dwStyles = myWindow.GetStyle();

CWindow::GetSystemMenu

Создает копию системного меню для изменения.

HMENU GetSystemMenu(BOOL bRevert) const throw();

Замечания

См GetSystemMenu . в пакете SDK для Windows.

CWindow::GetTopLevelParent

Извлекает родительское окно верхнего уровня окна.

HWND GetTopLevelParent() const throw();

Возвращаемое значение

Дескриптор родительского окна верхнего уровня.

CWindow::GetTopLevelWindow

Извлекает окно родительского или владельца верхнего уровня окна.

HWND GetTopLevelWindow() const throw();

Возвращаемое значение

Дескриптор окна владельца верхнего уровня.

CWindow::GetTopWindow

Извлекает дочернее окно верхнего уровня.

HWND GetTopWindow() const throw();

Замечания

См GetTopWindow . в пакете SDK для Windows.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::GetTopWindow() to get the top-level child window

CWindow myWindow;
myWindow.Attach(hWnd);
HWND hWndFavoriteChild = myWindow.GetTopWindow();

CWindow::GetUpdateRect

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

BOOL GetUpdateRect(LPRECT lpRect, BOOL bErase = FALSE) throw();

Замечания

См GetUpdateRect . в пакете SDK для Windows.

CWindow::GetUpdateRgn

Извлекает регион обновления и копирует его в указанный регион.

int GetUpdateRgn(HRGN hRgn, BOOL bErase = FALSE) throw();

Замечания

См GetUpdateRgn . в пакете SDK для Windows.

CWindow::GetWindow

Извлекает указанное окно.

HWND GetWindow(UINT nCmd) const throw();

Замечания

См GetWindow . в пакете SDK для Windows.

CWindow::GetWindowContextHelpId

Извлекает идентификатор контекста справки окна.

DWORD GetWindowContextHelpId() const throw();

Замечания

См GetWindowContextHelpId . в пакете SDK для Windows.

CWindow::GetWindowDC

Извлекает контекст устройства для всего окна.

HDC GetWindowDC() throw();

Замечания

См GetWindowDC . в пакете SDK для Windows.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::GetWindowDC() to retrieve the DC of the entire window

CWindow myWindow;
myWindow.Attach(hWnd);
HDC hDC = myWindow.GetWindowDC();

CWindow::GetWindowLong

Извлекает 32-разрядное значение с указанным смещением в дополнительную память окна.

LONG GetWindowLong(int nIndex) const throw();

Замечания

См GetWindowLong . в пакете SDK для Windows.

Примечание.

Чтобы написать код, совместимый с 32-разрядными и 64-разрядными версиями Windows, используйте CWindow::GetWindowLongPtr.

CWindow::GetWindowLongPtr

Извлекает сведения об указанном окне, включая значение с указанным смещением в дополнительную память окна.

LONG_PTR GetWindowLongPtr(int nIndex) const throw();

Замечания

Дополнительные сведения см GetWindowLongPtr . в пакете SDK для Windows.

Если вы извлекаете указатель или дескриптор, эта функция заменяет CWindow::GetWindowLong метод.

Примечание.

Указатели и дескрипторы — это 32-разрядные 32-разрядные оси Windows и 64-разрядные устройства в 64-разрядной версии Windows.

Чтобы написать код, совместимый с 32-разрядными и 64-разрядными версиями Windows, используйте CWindow::GetWindowLongPtr.

CWindow::GetWindowPlacement

Извлекает состояние и позиции отображения.

BOOL GetWindowPlacement(WINDOWPLACEMENT FAR* lpwndpl) const throw();

Замечания

См GetWindowPlacement . в пакете SDK для Windows.

CWindow::GetWindowProcessID

Извлекает идентификатор процесса, создавшего окно.

DWORD GetWindowProcessID() throw();

Замечания

См GetWindowThreadProcessID . в пакете SDK для Windows.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::GetWindowProcessID() to retrieve the id of the 
//process that created the window

CWindow myWindow;
myWindow.Attach(hWnd);
DWORD dwID = myWindow.GetWindowProcessID();

CWindow::GetWindowRect

Извлекает ограничивающие размеры окна.

BOOL GetWindowRect(LPRECT lpRect) const throw();

Замечания

См GetWindowRect . в пакете SDK для Windows.

CWindow::GetWindowRgn

Получает копию области окна окна.

int GetWindowRgn(HRGN hRgn) throw();

Замечания

См GetWindowRgn . в пакете SDK для Windows.

CWindow::GetWindowText

Извлекает текст окна.

int GetWindowText(LPTSTR lpszStringBuf, int nMaxCount) const throw();
BOOL GetWindowText(BSTR& bstrText) throw();
int GetWindowText(CSimpleString& strText) const;

Параметры

lpszStringBuf
Буфер, в который записывается текст окна.

nMaxCount
Размер буфера в символах; соответствует также максимальному числу символов для записи.

bstrText
Объект BSTR для хранения текста окна.

strText
Объект CString для хранения текста окна.

Возвращаемое значение

Если текст успешно скопирован, возвращаемое значение равно TRUE; в противном случае возвращается FALSEзначение.

Замечания

См GetWindowText . в пакете SDK для Windows.

Вторая версия этого метода позволяет хранить текст в ; BSTRтретья версия позволяет хранить результат в CStringформате , так как CSimpleString является базовым классом CString.

CWindow::GetWindowTextLength

Извлекает длину текста окна.

int GetWindowTextLength() const throw();

Замечания

См GetWindowTextLength . в пакете SDK для Windows.

CWindow::GetWindowThreadID

Извлекает идентификатор потока, создавшего указанное окно.

DWORD GetWindowThreadID() throw();

Замечания

См GetWindowThreadProcessID . в пакете SDK для Windows.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::GetWindowThreadID() to retrieve the id of the thread 
//that created the window

CWindow myWindow;
myWindow.Attach(hWnd);
DWORD dwID = myWindow.GetWindowThreadID();

CWindow::GetWindowWord

Извлекает 16-разрядное значение с указанным смещением в дополнительную память окна.

WORD GetWindowWord(int nIndex) const throw();

Замечания

См GetWindowLong . в пакете SDK для Windows.

CWindow::GotoDlgCtrl

Задает фокус клавиатуры элементу управления в диалоговом окне.

void GotoDlgCtrl(HWND hWndCtrl) const throw();

Замечания

См WM_NEXTDLGCTL . в пакете SDK для Windows.

CWindow::HideCaret

Скрывает системный уход.

BOOL HideCaret() throw();

Замечания

См HideCaret . в пакете SDK для Windows.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::HideCaret() to hide the caret of the window owning 
//the caret

CWindow myWindow;
myWindow.Attach(hWndEdit);
myWindow.HideCaret();

CWindow::HiliteMenuItem

Выделяет или удаляет выделение из элемента меню верхнего уровня.

BOOL HiliteMenuItem(
    HMENU hMenu,
    UINT uHiliteItem,
    UINT uHilite) throw();

Замечания

См HiliteMenuItem . в пакете SDK для Windows.

CWindow::Invalidate

Делает недействительной всю клиентскую область.

BOOL Invalidate(BOOL bErase = TRUE) throw();

Замечания

См InvalidateRect . в пакете SDK для Windows.

Передает NULLRECT параметр InvalidateRect функции Win32.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::Invalidate() to invalidate the entire client area

CWindow myWindow;
myWindow.Attach(hWnd);
myWindow.Invalidate();

CWindow::InvalidateRect

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

BOOL InvalidateRect(LPCRECT lpRect, BOOL bErase = TRUE) throw();

Замечания

См InvalidateRect . в пакете SDK для Windows.

CWindow::InvalidateRgn

Отменяет область клиента в указанном регионе.

void InvalidateRgn(HRGN hRgn, BOOL bErase = TRUE) throw();

Замечания

Дополнительные сведения см InvalidateRgn . в пакете SDK для Windows.

Задает тип возвращаемого voidInvalidateRgn значения, а функция Win32 всегда возвращается TRUE.

CWindow::IsChild

Определяет, является ли указанное окно дочерним окном.

BOOL IsChild(const HWND hWnd) const throw();

Замечания

См IsChild . в пакете SDK для Windows.

CWindow::IsDialogMessage

Определяет, предназначено ли сообщение для указанного диалогового окна.

BOOL IsDialogMessage(LPMSG lpMsg) throw();

Замечания

См IsDialogMessage . в пакете SDK для Windows.

CWindow::IsDlgButtonChecked

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

UINT IsDlgButtonChecked(int nIDButton) const throw();

Замечания

См IsDlgButtonChecked . в пакете SDK для Windows.

CWindow::IsIconic

Определяет, свернуто ли окно.

BOOL IsIconic() const throw();

Замечания

См IsIconic . в пакете SDK для Windows.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::IsIconic() to determine if the window is minimized

CWindow myWindow;
myWindow.Attach(hWnd);
BOOL bIconic = myWindow.IsIconic();

CWindow::IsParentDialog

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

BOOL IsParentDialog() throw();

Возвращаемое значение

Возвращает, TRUE если родительское окно является диалогом, FALSE в противном случае.

CWindow::IsWindow

Определяет, идентифицирует ли указанный дескриптор окна.

BOOL IsWindow() throw();

Замечания

См IsWindow . в пакете SDK для Windows.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::IsWindow() to verify if the HWND corresponds 
//to an existing window

CWindow myWindow;
myWindow.Attach(hWnd);
BOOL bWindow = myWindow.IsWindow();

CWindow::IsWindowEnabled

Определяет, включено ли окно для входных данных.

BOOL IsWindowEnabled() const throw();

Замечания

См IsWindowEnabled . в пакете SDK для Windows.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::IsWindowEnabled() to verify if the window is enabled 
//for receiving input

CWindow myWindow;
myWindow.Attach(hWnd);
BOOL bEnabled = myWindow.IsWindowEnabled();

CWindow::IsWindowVisible

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

BOOL IsWindowVisible() const throw();

Замечания

См IsWindowVisible . в пакете SDK для Windows.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::IsWindowVisible() to determine the visibility state 
//of the window

CWindow myWindow;
myWindow.Attach(hWnd);
BOOL bVisible = myWindow.IsWindowVisible();

CWindow::IsWindowUnicode

Определяет, является ли указанное окно собственным окном Юникода.

BOOL IsWindowUnicode() throw();

Замечания

См IsWindowUnicode . в пакете SDK для Windows.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::IsWindowUnicode() to determine if the window is a 
//UNICODE window or an ANSI one.

CWindow myWindow;
myWindow.Attach(hWnd);
BOOL bUnicode = myWindow.IsWindowUnicode();

CWindow::IsZoomed

Определяет, развернуто ли окно.

BOOL IsZoomed() const throw();

Замечания

См IsZoomed . в пакете SDK для Windows.

CWindow::KillTimer

Уничтожает событие таймера, созданное с помощью CWindow::SetTimer.

BOOL KillTimer(UINT nIDEvent) throw();

Замечания

См KillTimer . в пакете SDK для Windows.

CWindow::LockWindowUpdate

Отключает или включает рисование в окне, вызвав LockWindowUpdate функцию Win32.

BOOL LockWindowUpdate(BOOL bLock = TRUE) throw();

Параметры

bLock
[in] Если TRUE (значение по умолчанию), окно будет заблокировано. В противном случае она будет разблокирована.

Возвращаемое значение

TRUE Значение , если окно успешно заблокировано; FALSEв противном случае .

Замечания

В bLock противном TRUEслучае этот метод передается m_hWnd в функцию Win32; в противном случае она передается NULL.

CWindow::m_hWnd

Содержит дескриптор окна, связанного CWindow с объектом.

HWND m_hWnd throw() throw();

CWindow::MapWindowPoints

Преобразует набор точек из координатного пространства окна в координатное пространство другого окна.

int MapWindowPoints(
    HWND hWndTo,
    LPPOINT lpPoint,
    UINT nCount) const throw();

int MapWindowPoints(
    HWND hWndTo,
    LPRECT lpRect) const throw();

Замечания

См MapWindowPoints . в пакете SDK для Windows.

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

CWindow::MessageBox

Отображает окно сообщения.

int MessageBox(
    LPCTSTR lpszText,
    LPCTSTR lpszCaption = NULL,
    UINT nType = MB_OK) throw();

Замечания

См MessageBox . в пакете SDK для Windows.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::MessageBox() to pop up a Windows message box

CWindow myWindow;
myWindow.Attach(hWnd);
myWindow.MessageBox(_T("Hello World"));

CWindow::ModifyStyle

Изменяет стили CWindow окон объекта.

BOOL ModifyStyle(
    DWORD dwRemove,
    DWORD dwAdd,
    UINT nFlags = 0) throw();

Параметры

dwRemove
[in] Указывает стили окна, которые необходимо удалить во время изменения стиля.

dwAdd
[in] Указывает стили окна, добавляемые во время изменения стиля.

nFlags
[in] Флаги размещения окна. Список возможных значений см SetWindowPos . в функции в пакете SDK для Windows.

Возвращаемое значение

TRUE Значение FALSEв противном случае .

Замечания

Стили, которые нужно добавить или удалить, можно объединить с помощью побитового оператора "or" (|). См. функцию CreateWindow в windows SDKfor о доступных стилях окон.

Если nFlags это ненулевое значение, ModifyStyle вызывает функцию SetWindowPosWin32 и перерисовывает окно, объединяя nFlags следующие четыре флага:

  • SWP_NOSIZE Сохраняет текущий размер.

  • SWP_NOMOVE Сохраняет текущую позицию.

  • SWP_NOZORDER Сохраняет текущий порядок Z.

  • SWP_NOACTIVATE Не активирует окно.

Чтобы изменить расширенные стили окна, вызовите ModifyStyleEx.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::ModifyStyle() to add and remove the window styles

CWindow myWindow;
myWindow.Attach(hWnd);

//The following line removes the WS_CLIPCHILDREN style from the 
//window and adds the WS_CAPTION style to the window
myWindow.ModifyStyle(WS_CLIPCHILDREN, WS_CAPTION);

CWindow::ModifyStyleEx

Изменяет расширенные стили CWindow окон объекта.

BOOL ModifyStyleEx(
    DWORD dwRemove,
    DWORD dwAdd,
    UINT nFlags = 0) throw();

Параметры

dwRemove
[in] Указывает расширенные стили, которые необходимо удалить во время изменения стиля.

dwAdd
[in] Указывает расширенные стили, добавляемые во время изменения стиля.

nFlags
[in] Флаги размещения окна. Список возможных значений см SetWindowPos . в функции в пакете SDK для Windows.

Возвращаемое значение

TRUE Значение FALSEв противном случае .

Замечания

Стили, которые нужно добавить или удалить, можно объединить с помощью побитового оператора "or" (|). CreateWindowEx Сведения о доступных расширенных стилях см. в пакете SDK для Windows.

Если nFlags это ненулевое значение, ModifyStyleEx вызывает функцию SetWindowPosWin32 и перерисовывает окно, объединяя nFlags следующие четыре флага:

  • SWP_NOSIZE Сохраняет текущий размер.

  • SWP_NOMOVE Сохраняет текущую позицию.

  • SWP_NOZORDER Сохраняет текущий порядок Z.

  • SWP_NOACTIVATE Не активирует окно.

Чтобы изменить окна с помощью обычных стилей окон, вызовите ModifyStyle.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::ModifyStyleEx() to add and remove the extended 
//window styles

CWindow myWindow;
myWindow.Attach(hWnd);

//The following line removes WS_EX_CONTEXTHELP extended style from 
//the window and adds WS_EX_TOOLWINDOW extended style to the window 

myWindow.ModifyStyleEx(WS_EX_CONTEXTHELP, WS_EX_TOOLWINDOW);

CWindow::MoveWindow

Изменяет размер и положение окна.

BOOL MoveWindow(
    int x,
    int y,
    int nWidth,
    int nHeight,
    BOOL bRepaint = TRUE) throw();

BOOL MoveWindow(
    LPCRECT lpRect,
    BOOL bRepaint = TRUE) throw();

Замечания

Для объекта xy окна верхнего уровня параметры относятся к левому верхнему углу экрана. Для дочернего объекта окна они относятся к левому верхнему углу клиентской области родительского окна.

Вторая версия этого метода использует структуру RECT для определения новой позиции, ширины и высоты окна.

CWindow::NextDlgCtrl

Задает фокус клавиатуры следующим элементом управления в диалоговом окне.

void NextDlgCtrl() const throw();

Замечания

См WM_NEXTDLGCTL . в пакете SDK для Windows.

CWindow::OpenClipboard

Открывает буфер обмена.

BOOL OpenClipboard() throw();

Замечания

См OpenClipboard . в пакете SDK для Windows.

CWindow::operator HWND

Преобразует объект в CWindow объект HWND.

operator HWND() const throw();

CWindow::operator =

HWNDCWindow Назначает объекту, задав m_hWnd элементу hWndзначение .

CWindow& operator= (HWND hWnd) throw();

CWindow::PostMessage

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

BOOL PostMessage(
    UINT message,
    WPARAM wParam = 0,
    LPARAM lParam = 0) throw();

Замечания

См PostMessage . в пакете SDK для Windows.

Возвращается без ожидания обработки сообщения потоком.

Пример

//The following example attaches an HWND to the CWindow object and 
//posts a WM_PAINT message to the Window wrapped by the CWindow object 
//using CWindow::PostMessage() with the default values of WPARAM and 
//LPARAM

CWindow myWindow;
myWindow.Attach(hWnd);
myWindow.PostMessage(WM_PAINT);

CWindow::PrevDlgCtrl

Задает фокус клавиатуры предыдущему элементу управления в диалоговом окне.

void PrevDlgCtrl() const throw();

Замечания

См WM_NEXTDLGCTL . в пакете SDK для Windows.

CWindow::Print

WM_PRINT Отправляет сообщение в окно, чтобы запросить, что он рисует себя в указанном контексте устройства.

void Print(HDC hDC, DWORD dwFlags) const throw();

Параметры

hDC
[in] Дескриптор контекста устройства.

dwFlags
[in] Задает параметры рисования. Можно объединить один или несколько следующих флагов:

  • PRF_CHECKVISIBLE Нарисуйте окно только в том случае, если оно отображается.

  • PRF_CHILDREN Рисование всех видимых дочерних окон.

  • PRF_CLIENT Рисование клиентской области окна.

  • PRF_ERASEBKGND Удалите фон перед рисованием окна.

  • PRF_NONCLIENT Рисование не клиентской области окна.

  • PRF_OWNED Рисование всех принадлежащих окон.

CWindow::PrintClient

WM_PRINTCLIENT Отправляет сообщение в окно, чтобы запросить, что он рисует свою клиентская область в указанном контексте устройства.

void PrintClient(HDC hDC, DWORD dwFlags) const throw();

Параметры

hDC
[in] Дескриптор контекста устройства.

dwFlags
[in] Задает параметры рисования. Можно объединить один или несколько следующих флагов:

  • PRF_CHECKVISIBLE Нарисуйте окно только в том случае, если оно отображается.

  • PRF_CHILDREN Рисование всех видимых дочерних окон.

  • PRF_CLIENT Рисование клиентской области окна.

  • PRF_ERASEBKGND Удалите фон перед рисованием окна.

  • PRF_NONCLIENT Рисование не клиентской области окна.

  • PRF_OWNED Рисование всех принадлежащих окон.

CWindow::rcDefault

Содержит измерения окна по умолчанию.

static RECT rcDefault;

CWindow::RedrawWindow

Обновления указанный прямоугольник или регион в клиентской области.

BOOL RedrawWindow(
    LPCRECT lpRectUpdate = NULL,
    HRGN hRgnUpdate = NULL,
    UINT flags = RDW_INVALIDATE | RDW_UPDATENOW | RDW_ERASE);

throw()

Замечания

См RedrawWindow . в пакете SDK для Windows.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::RedrawWindow() to update the entire window using the 
//default arguments

CWindow myWindow;
myWindow.Attach(hWnd);
BOOL bRedrawn = myWindow.RedrawWindow();

CWindow::ReleaseDC

Освобождает контекст устройства.

int ReleaseDC(HDC hDC);

Замечания

См ReleaseDC . в пакете SDK для Windows.

Пример

// The following example attaches a HWND to the CWindow object,
// calls CWindow::GetDC to retrieve the DC of the client
// area of the window wrapped by CWindow Object, and calls
// CWindow::ReleaseDC to release the DC. 

CWindow myWindow;
myWindow.Attach(hWnd);   
HDC hDC = myWindow.GetDC();

// Use the DC

myWindow.ReleaseDC(hDC);
hDC = NULL;

CWindow::ResizeClient

Изменяет размер окна до указанного размера клиентской области.

BOOL ResizeClient(
    int nWidth,
    int nHeight,
    BOOL bRedraw = FALSE) throw();

Параметры

nWidth
Новая ширина окна в пикселях.

nHeight
Новая высота окна в пикселях.

bRedraw
Флаг, указывающий, следует ли перерисовывать изменения. FALSEЗначение по умолчанию, указывающее, что окно не перерисовывает изменения.

CWindow::ScreenToClient

Преобразует координаты экрана в координаты клиента.

BOOL ScreenToClient(LPPOINT lpPoint) const throw();
BOOL ScreenToClient(LPRECT lpRect) const throw();

Замечания

См ScreenToClient . в пакете SDK для Windows.

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

CWindow::ScrollWindow

Прокручивает указанную клиентская область.

BOOL ScrollWindow(
    int xAmount,
    int yAmount,
    LPCRECT lpRect = NULL,
    LPCRECT lpClipRect = NULL) throw();

Замечания

См ScrollWindow . в пакете SDK для Windows.

CWindow::ScrollWindowEx

Прокручивает указанную клиентская область с дополнительными функциями.

int ScrollWindowEx(
    int dx,
    int dy,
    LPCRECT lpRectScroll,
    LPCRECT lpRectClip,
    HRGN hRgnUpdate,
    LPRECT lpRectUpdate,
    UINT flags) throw();

Замечания

См ScrollWindowEx . в пакете SDK для Windows.

CWindow::SendDlgItemMessage

Отправляет сообщение в элемент управления.

LRESULT SendDlgItemMessage(
    int nID,
    UINT message,
    WPARAM wParam = 0,
    LPARAM lParam = 0) throw();

Замечания

См SendDlgItemMessage . в пакете SDK для Windows.

CWindow::SendMessage

Отправляет сообщение в окно и не возвращается, пока процедура окна не обработала сообщение.

LRESULT SendMessage(
    UINT message,
    WPARAM wParam = 0,
    LPARAM lParam = 0) throw();

static LRESULT SendMessage(
    HWND hWnd,
    UINT message,
    WPARAM wParam,
    LPARAM lParam) throw();

Замечания

См SendMessage . в пакете SDK для Windows.

Пример

// The following example attaches a HWND to the CWindow
// object and sends a WM_PAINT message to the window
// wrapped by CWindow object using CWindow::SendMessage.

CWindow myWindow;
myWindow.Attach(hWnd);   
myWindow.SendMessage(WM_PAINT, 0L, 0L);

CWindow::SendMessageToDescendants

Отправляет указанное сообщение всем непосредственным дочерним элементам CWindow объекта.

void SendMessageToDescendants(
    UINT message,
    WPARAM wParam = 0,
    LPARAM lParam = 0,
    BOOL bDeep = TRUE) throw();

Параметры

message
[in] Отправленное сообщение.

wParam
[in] Дополнительные сведения о сообщении.

lParam
[in] Дополнительные сведения о сообщении.

bDeep
[in] Если TRUE (значение по умолчанию), сообщение будет отправлено во все окна потомков; в противном случае оно будет отправлено только в непосредственные дочерние окна.

Замечания

В противном bDeepTRUEслучае сообщение отправляется во все остальные окна потомков.

CWindow::SendNotifyMessage

Отправляет сообщение в окно.

BOOL SendNotifyMessage(
    UINT message,
    WPARAM wParam = 0,
    LPARAM lParam = 0) throw();

Замечания

См SendNotifyMessage . в пакете SDK для Windows.

Если окно было создано вызывающим потоком, SendNotifyMessage не возвращается, пока процедура окна не обработала сообщение. В противном случае он возвращается немедленно.

CWindow::SetActiveWindow

Активирует окно.

HWND SetActiveWindow() throw();

Замечания

См SetActiveWindow . в пакете SDK для Windows.

Пример

// The following example attaches a HWND to the CWindow object
// and sets the window as an active window by calling 
// CWindow::SetActiveWindow which returns the HWND of the
// previously active window.

CWindow myWindow;
myWindow.Attach(hWnd);   
HWND hWndPrev = myWindow.SetActiveWindow();

CWindow::SetCapture

Отправляет все последующие входные данные мыши в окно.

HWND SetCapture() throw();

Замечания

См SetCapture . в пакете SDK для Windows.

CWindow::SetClipboardViewer

Добавляет окно в цепочку просмотра буфера обмена.

HWND SetClipboardViewer() throw();

Замечания

См SetClipboardViewer . в пакете SDK для Windows.

CWindow::SetDlgCtrlID

Задает идентификатор окна указанным значением.

int SetDlgCtrlID(int nID) throw();

Параметры

nID
[in] Новое значение, заданное для идентификатора окна.

Возвращаемое значение

При успешном выполнении предыдущего идентификатора окна; в противном случае — 0.

CWindow::SetDlgItemInt

Изменяет текст элемента управления в строковое представление целочисленного значения.

BOOL SetDlgItemInt(
    int nID,
    UINT nValue,
    BOOL bSigned = TRUE) throw();

Замечания

См SetDlgItemInt . в пакете SDK для Windows.

CWindow::SetDlgItemText

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

BOOL SetDlgItemText(int nID, LPCTSTR lpszString) throw();

Замечания

См SetDlgItemText . в пакете SDK для Windows.

CWindow::SetFocus

Задает фокус ввода в окно.

HWND SetFocus() throw();

Замечания

См SetFocus . в пакете SDK для Windows.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::SetFocus() to set the input focus

CWindow myWindow;
myWindow.Attach(hWnd);
HWND hWndLeftFocus = myWindow.SetFocus();

CWindow::SetFont

Изменяет текущий шрифт окна, отправив WM_SETFONT сообщение в окно.

void SetFont(HFONT hFont, BOOL bRedraw = TRUE) throw();

Параметры

hFont
[in] Дескриптор нового шрифта.

bRedraw
[in] Если TRUE (значение по умолчанию), окно будет перезабрано. В противном случае это не так.

CWindow::SetHotKey

Связывает горячий ключ с окном, отправив WM_SETHOTKEY сообщение.

int SetHotKey(WORD wVirtualKeyCode, WORD wModifiers) throw();

Параметры

wVirtualKeyCode
[in] Код виртуального ключа горячего ключа. Список стандартных кодов виртуальных ключей см. в разделе Winuser.h.

wModifiers
[in] Модификаторы горячего ключа. Список возможных значений см WM_SETHOTKEY . в пакете SDK для Windows.

Возвращаемое значение

Список возможных возвращаемых значений см WM_SETHOTKEY . в пакете SDK для Windows.

CWindow::SetIcon

Задает большой или маленький значок окна на значок, hIconопределенный по.

HICON SetIcon(HICON hIcon, BOOL bBigIcon = TRUE) throw();

Параметры

hIcon
[in] Дескриптор для нового значка.

bBigIcon
[in] Если TRUE (значение по умолчанию), метод задает большой значок. В противном случае он задает небольшой значок.

Возвращаемое значение

Дескриптор предыдущего значка.

Замечания

SetIcon отправляет WM_SETICON сообщение в окно.

CWindow::SetMenu

Изменяет текущее меню окна.

BOOL SetMenu(HMENU hMenu) throw();

Замечания

См SetMenu . в пакете SDK для Windows.

CWindow::SetParent

Изменяет родительское окно.

HWND SetParent(HWND hWndNewParent) throw();

Замечания

См SetParent . в пакете SDK для Windows.

Пример

// The following example attaches a HWND to the CWindow object
// and sets the hWndParent as the parent window of the 
// window wrapped by CWindow object using CWindow::SetParent.

CWindow myWindow;
myWindow.Attach(hWndChild);
HWND hWndPrevParent = myWindow.SetParent(hWndParent);

CWindow::SetRedraw

Задает или очищает флаг перерасчета, отправляя WM_SETREDRAW сообщение в окно.

void SetRedraw(BOOL bRedraw = TRUE) throw();

Параметры

bRedraw
[in] Указывает состояние флага перерисовки. Если TRUE (значение по умолчанию), флаг перерисовки задан; если FALSEфлаг очищается.

Замечания

Вызов SetRedraw для разрешения перезаключаемых изменений или предотвращения перезаключаемых изменений.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::SetRedraw() to set and reset the redraw flag

CWindow myWindow;
myWindow.Attach(hWnd);
myWindow.SetRedraw();      //sets the redraw flag to TRUE
//
//
myWindow.SetRedraw(FALSE); //sets the redraw flag to FALSE

CWindow::SetScrollInfo

Задает параметры полосы прокрутки.

int SetScrollInfo(
    int nBar,
    LPSCROLLINFO lpScrollInfo,
    BOOL bRedraw = TRUE) throw();

Замечания

См SetScrollInfo . в пакете SDK для Windows.

CWindow::SetScrollPos

Изменяет положение поля прокрутки.

int SetScrollPos(
    int nBar,
    int nPos,
    BOOL bRedraw = TRUE) throw();

Замечания

См SetScrollPos . в пакете SDK для Windows.

CWindow::SetScrollRange

Изменяет диапазон полосы прокрутки.

BOOL SetScrollRange(
    int nBar,
    int nMinPos,
    int nMaxPos,
    BOOL bRedraw = TRUE) throw();

Замечания

См SetScrollRange . в пакете SDK для Windows.

CWindow::SetTimer

Создает событие таймера.

UINT SetTimer(
    UINT nIDEvent,
    UINT nElapse,
    void (CALLBACK* lpfnTimer)(HWND, UINT, UINT, DWORD) = NULL) throw();

Замечания

См SetTimer . в пакете SDK для Windows.

CWindow::SetWindowContextHelpId

Задает идентификатор контекста справки окна.

BOOL SetWindowContextHelpId(DWORD dwContextHelpId) throw();

Замечания

См SetWindowContextHelpId . в пакете SDK для Windows.

CWindow::SetWindowLong

Задает 32-разрядное значение с указанным смещением в дополнительную память окна.

LONG SetWindowLong(int nIndex, LONG dwNewLong) throw();

Замечания

См SetWindowLong . в пакете SDK для Windows.

Примечание.

Чтобы написать код, совместимый с 32-разрядными и 64-разрядными версиями Windows, используйте CWindow::SetWindowLongPtr.

CWindow::SetWindowLongPtr

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

LONG_PTR SetWindowLongPtr(int nIndex, LONG_PTR dwNewLong) throw();

Замечания

См SetWindowLongPtr . в пакете SDK для Windows.

Эта функция заменяет CWindow::SetWindowLong метод. Чтобы написать код, совместимый с 32-разрядными и 64-разрядными версиями Windows, используйте CWindow::SetWindowLongPtr.

CWindow::SetWindowPlacement

Задает состояние и позиции отображения.

BOOL SetWindowPlacement(const WINDOWPLACEMENT FAR* lpwndpl);

Замечания

См SetWindowPlacement . в пакете SDK для Windows.

CWindow::SetWindowPos

Задает размер, позицию и порядок Z.

BOOL SetWindowPos(
    HWND hWndInsertAfter,
    int x,
    int y,
    int cx,
    int cy,
    UINT nFlags) throw();

BOOL SetWindowPos(
    HWND hWndInsertAfter,
    LPCRECT lpRect,
    UINT nFlags) throw();

Замечания

См SetWindowPos . в пакете SDK для Windows.

Вторая версия этого метода использует структуру RECT для задания новой позиции, ширины и высоты окна.

CWindow::SetWindowRgn

Задает область окна окна.

int SetWindowRgn(HRGN hRgn, BOOL bRedraw = FALSE) throw();

Замечания

См SetWindowRgn . в пакете SDK для Windows.

CWindow::SetWindowText

Изменяет текст окна.

BOOL SetWindowText(LPCTSTR lpszString) throw();

Замечания

См SetWindowText . в пакете SDK для Windows.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::SetWindowText() to set the new title-text of the 
//window

CWindow myWindow;
myWindow.Attach(hWnd);
myWindow.SetWindowText(_T("Hello ATL"));

CWindow::SetWindowWord

Задает 16-разрядное значение с указанным смещением в дополнительную память окна.

WORD SetWindowWord(int nIndex, WORD wNewWord) throw();

Замечания

См SetWindowLong . в пакете SDK для Windows.

CWindow::ShowCaret

Отображает системную подсказку.

BOOL ShowCaret() throw();

Замечания

См ShowCaret . в пакете SDK для Windows.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::ShowCaret() to show the caret

CWindow myWindow;
myWindow.Attach(hWnd);
myWindow.ShowCaret();

CWindow::ShowOwnedPopups

Отображает или скрывает всплывающие окна, принадлежащие окну.

BOOL ShowOwnedPopups(BOOL bShow = TRUE) throw();

Замечания

См ShowOwnedPopups . в пакете SDK для Windows.

CWindow::ShowScrollBar

Отображает или скрывает полосу прокрутки.

BOOL ShowScrollBar(UINT nBar, BOOL bShow = TRUE) throw();

Замечания

См ShowScrollBar . в пакете SDK для Windows.

CWindow::ShowWindow

Задает состояние отображения окна.

BOOL ShowWindow(int nCmdShow) throw();

Замечания

См ShowWindow . в пакете SDK для Windows.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::ShowWindow() to show the window in its maximized state

CWindow myWindow;
myWindow.Attach(hWnd);
myWindow.ShowWindow(SW_SHOWMAXIMIZED);

CWindow::ShowWindowAsync

Задает состояние отображения окна, созданного другим потоком.

BOOL ShowWindowAsync(int nCmdShow) throw();

Замечания

См ShowWindowAsync . в пакете SDK для Windows.

CWindow::UpdateWindow

Обновляет клиентскую область.

BOOL UpdateWindow() throw();

Замечания

См UpdateWindow . в пакете SDK для Windows.

Пример

//The following example attaches an HWND to the CWindow object and 
//calls CWindow::UpdateWindow() to update the window

CWindow myWindow;
myWindow.Attach(hWnd);
BOOL bUpdated = myWindow.UpdateWindow();

CWindow::ValidateRect

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

BOOL ValidateRect(LPCRECT lpRect) throw();

Замечания

См ValidateRect . в пакете SDK для Windows.

CWindow::ValidateRgn

Проверяет клиентская область в указанном регионе.

BOOL ValidateRgn(HRGN hRgn) throw();

Замечания

См ValidateRgn . в пакете SDK для Windows.

CWindow::WinHelp

Запускает справку Windows.

BOOL WinHelp(
    LPCTSTR lpszHelp,
    UINT nCmd = HELP_CONTEXT,
    DWORD dwData = 0) throw();

Замечания

См WinHelp . в пакете SDK для Windows.

См. также

Общие сведения о классе