Функция CreateWindowEx создает окно перекрытия, всплывающее окно или ребенок с расширенный стиль; в противном случае эта функция идентична функции CreateWindow . Для получения дополнительных сведений о создании окна и для полного описания параметров CreateWindowExсмотрите CreateWindow.
() HWND CreateWindowEx DWORD dwExStyle, / / расширенный стиль окнаLPCTSTRlpClassName, / / указатель на зарегистрированные имя классаLPCTSTRlpWindowName, / / указатель на имя окнаDWORDdwStyle, / / стиль окна int x, / / горизонтальное положение окна int y, / / вертикальное положение окна intnWidth, / / ширина окна intnHeight, / / высота окнаHWNDhWndParent, / / обработать родителя или владелец окнаHMENUhMenu, / / обработать для меню, или идентификатор дочернего окнаHINSTANCEhInstance, / / обработать для экземпляра приложенияLPVOIDlpParam / / указатель на данные окна Создание);
Стиль | Значение |
---|---|
WS_EX_ACCEPTFILES | Указывает, что окно, созданное с этим стилем принимает перетаскивания файлов. |
WS_EX_APPWINDOW | Вынуждает верхнего уровня окна на панели задач, когда окно не станет видимым. |
WS_EX_CLIENTEDGE | Указывает, что окно имеет границу с затонувших края. |
WS_EX_CONTEXTHELP | Включает вопросительный знак в строке заголовка окна. Когда пользователь щелкает знак вопроса, курсор изменения в знак вопроса с указателем. Если пользователь щелкает дочернего окна, ребенок получает сообщение WM_HELP. Дочернее окно сообщение следует передать процедуре родительского окна, который следует вызвать функцию WinHelp , с помощью команды HELP_WM_HELP. Помощи приложение отображает всплывающее окно, которое обычно содержит справку для дочернего окна. WS_EX_CONTEXTHELP не может использоваться с WS_MAXIMIZEBOX или WS_MINIMIZEBOX стилей. |
WS_EX_CONTROLPARENT | Позволяет пользователю перемещаться среди дочерних окон окна с помощью клавиши tab. |
WS_EX_DLGMODALFRAME | Создает окно, которое имеет двойной границы; окна при необходимости, создаются с заголовка окна, указав WS_CAPTION стиль в параметре dwStyle. |
WS_EX_LEFT | Окно имеет общие свойства «левому краю». Это значение по умолчанию. |
WS_EX_LEFTSCROLLBAR | Если язык оболочки является иврит, арабский язык или другой язык что поддерживает чтение порядок выравнивания, вертикальная полоса прокрутки (если есть) слева от клиентской области. Для других языков игнорируется и не рассматривается как ошибка стиль. |
WS_EX_LTRREADING | Текст окна отображается с использованием слева направо; порядок чтения свойств. Это значение по умолчанию. |
WS_EX_MDICHILD | Создает дочернее окно MDI. |
WS_EX_NOPARENTNOTIFY | Указывает, что дочернее окно, созданные с этим стилем не отправляет сообщение WM_PARENTNOTIFY родительского окна, при его создании или уничтожен. |
WS_EX_OVERLAPPEDWINDOW | Сочетает в себе стили WS_EX_CLIENTEDGE и WS_EX_WINDOWEDGE. |
WS_EX_PALETTEWINDOW | Сочетает в себе стили WS_EX_WINDOWEDGE, WS_EX_TOOLWINDOW и WS_EX_TOPMOST. |
WS_EX_RIGHT | Окно имеет общие свойства, «справа». Это зависит от класса window. Этот стиль имеет эффект только если язык оболочки является иврит, арабский язык или другой язык, поддерживающий чтение заказать выравнивание; в противном случае игнорируется и не рассматривается как ошибка стиль. |
WS_EX_RIGHTSCROLLBAR | Вертикальная полоса прокрутки (если есть) — справа от клиентской области. Это значение по умолчанию. |
WS_EX_RTLREADING | Если язык оболочки является иврит, арабский язык или другой язык, что поддерживает чтение порядок выравнивания, окна отображается текст с использованием права на левом порядка чтения свойств. Для других языков игнорируется и не рассматривается как ошибка стиль. |
WS_EX_STATICEDGE | Создает окно с трехмерной границей стилем, предназначены для использования для элементов, которые не принимают ввод пользователя. |
WS_EX_TOOLWINDOW | Создает окно инструментов; то есть окно предназначен для использования как перемещаемой панелью инструментов. Окно инструментов присутствует строка заголовка, короче, чем нормальный заголовок и заголовок окна отображаются с помощью меньший размер шрифта. Окно инструментов не отображается на панели задач или в диалоговом окне, которое появляется, когда пользователь нажал клавиши alt + tab. Если окно инструментов системного меню, его значок не отображается в заголовке окна. Однако система меню можно отобразить, щелкнув правой кнопкой мыши или введя alt + пробел. |
WS_EX_TOPMOST | Указывает, что окно, созданное с этим стилем следует прежде всего верхний windows и должен оставаться над ними, даже при деактивации окна. Чтобы добавить или удалить этот стиль, используется функция SetWindowPos. |
WS_EX_TRANSPARENT | Указывает, что окно, созданное с этим стилем не должен быть окрашен до тех пор, пока окрашены братьев и сестер под окном (которые были созданы в том же потоке). Появляется окно прозрачным потому что биты базового сестру windows уже окрашены. Для достижения прозрачности без этих ограничений, используйте SetWindowRgn функция. |
WS_EX_WINDOWEDGE | Указывает, что окно имеет границу с эффект приподнятости. |
С помощью WS_EX_RIGHT стиль для статических или элементы управления редактирования имеет тот же эффект, что и использование SS_RIGHT или ES_RIGHT стиле, соответственно. Используя этот стиль с элементами управления button имеет тот же эффект, что и использование стилей BS_RIGHT и BS_RIGHTBUTTON.
Если lpClassName является строкой, он определяет имя класса окна. Имя класса может быть любым именем, зарегистрированные с функцией RegisterClassEx или какой-либо из имен предопределенного класса элемента управления.
Если стиль окна заголовка окна, заголовок окна, который указывает lpWindowName отображается в строке заголовка. При использовании CreateWindow для создания элементов управления, такие как кнопки, флажки и статических элементов управления, используйте lpWindowName для указания текста элемента управления.
Стиль | Значение |
---|---|
WS_BORDER | Создает окно, которое имеет тонкие линии границы. |
WS_CAPTION | Создает окно, которое имеет строки заголовка (включает стиль WS_BORDER). |
WS_CHILD | Создает дочернее окно. Этот стиль не может использоваться с WS_POPUP стиль. |
WS_CHILDWINDOW | Же самое, что стиль WS_CHILD. |
WS_CLIPCHILDREN | Исключая площадь, занятая дочерних окон, когда рисование происходит в родительском окне. Этот стиль используется при создании родительского окна. |
WS_CLIPSIBLINGS | Клипы дочерних окон отношению друг к другу; то есть, когда получает конкретного дочернего окна сообщение WM_PAINT , стиль WS_CLIPSIBLINGS клипы всех остальных перекрывающихся окон ребенка из региона дочернего окна обновления. Если WS_CLIPSIBLINGS не указан и перекрываются дочерних окон, это возможно, при рисовании в пределах клиентской области дочернего окна, чтобы привлечь в пределах клиентской области соседнего дочернего окна. |
WS_DISABLED | Создает окно, которое первоначально отключено. Инвалидов окна не может получать входные данные от пользователя. |
WS_DLGFRAME | Создает окно, которое имеет границы стиля, обычно используется с диалоговыми окнами. Окно с этим стилем не может иметь строки заголовка. |
WS_GROUP | Определяет первый элемент управления группы элементов управления. Группа состоит из этого первого элемента управления и всех элементов управления, определенных после него, вплоть до на следующий элемент управления с WS_GROUP стилем. Первый элемент управления в каждой группе обычно имеет стиль WS_TABSTOP, так что пользователь может перемещаться от группы к группе. Пользователь может впоследствии изменить фокус клавиатуры с одного элемента управления в группе на следующий элемент управления в группе, используя ключи дирекции. |
WS_HSCROLL | Создает окно, которое имеет горизонтальную полосу прокрутки. |
WS_ICONIC | Создает окно, которое первоначально к минимуму. Же самое, что стиль WS_MINIMIZE. |
WS_MAXIMIZE | Создает окно, которое первоначально развернуто. |
WS_MAXIMIZEBOX | Создает окно, которое имеет кнопку Развернуть. Нельзя использовать вместе с WS_EX_CONTEXTHELP стилем. Необходимо также указать WS_SYSMENU стиль. |
WS_MINIMIZE | Создает окно, которое первоначально к минимуму. Же самое, что стиль WS_ICONIC. |
WS_MINIMIZEBOX | Создает окно, которое имеет кнопку Свернуть. Нельзя использовать вместе с WS_EX_CONTEXTHELP стилем. Необходимо также указать WS_SYSMENU стиль. |
WS_OVERLAPPED | Создает перекрывающихся окон. Перекрывающиеся окна есть строка заголовка и граница. Же самое, что стиль WS_TILED. |
WS_OVERLAPPEDWINDOW | Создаёт перекрывающихся окно с WS_OVERLAPPED, WS_CAPTION, WS_SYSMENU, WS_THICKFRAME, WS_MINIMIZEBOX и WS_MAXIMIZEBOX стилей. Же самое, что стиль WS_TILEDWINDOW. |
WS_POPUP | Создает всплывающее окно. Этот стиль не может использоваться с WS_CHILD стиль. |
WS_POPUPWINDOW | Создает всплывающее окно с WS_BORDER, WS_POPUP и WS_SYSMENU стилей. Стили WS_CAPTION и WS_POPUPWINDOW должны быть объединены для отображения меню окна. |
WS_SIZEBOX | Создает окно, которое имеет границы для изменения размера. Же самое, что стиль WS_THICKFRAME. |
WS_SYSMENU | Создает окно, в меню окна на его заголовок. Необходимо также указать WS_CAPTION стиль. |
WS_TABSTOP | Определяет элемент управления, который может получить фокус клавиатуры, когда пользователь нажимает клавишу tab. Нажатие клавиши tab изменяет фокус на следующий элемент управления в WS_TABSTOP стиле. |
WS_THICKFRAME | Создает окно, которое имеет границы для изменения размера. Же самое, что стиль WS_SIZEBOX. |
WS_TILED | Создает перекрывающихся окон. Перекрывающиеся окна есть строка заголовка и граница. Же самое, что стиль WS_OVERLAPPED. |
WS_TILEDWINDOW | Создаёт перекрывающихся окно с WS_OVERLAPPED, WS_CAPTION, WS_SYSMENU, WS_THICKFRAME, WS_MINIMIZEBOX и WS_MAXIMIZEBOX стилей. Же самое, что стиль WS_OVERLAPPEDWINDOW. |
WS_VISIBLE | Создает окно, которое первоначально виден. |
WS_VSCROLL | Создает окно, которое имеет вертикальную полосу прокрутки. |
Если x имеет значение CW_USEDEFAULT, система выбирает положение по умолчанию для левого верхнего угла окна и игнорирует параметр y . CW_USEDEFAULT допустим только для перекрывающихся окон; Если для указано всплывающее окно или дочерние окна, x и y параметров устанавливаются в ноль.
Если перекрывающихся окно создается с установленным битом WS_VISIBLE стиля и параметр x имеет значение CW_USEDEFAULT, система игнорирует параметр y.
Windows NT 5.0 и более поздних: Для создания окна сообщения только поставлять HWND_MESSAGE или дескриптора к существующему окну сообщений только.
Если функция выполнена успешно, возвращаемое значение является дескриптором для нового окна.
Если вызов функции был неуспешен, возвращается значение NULL. Чтобы получить расширенные сведения об ошибке, вызовите GetLastError.
Функция CreateWindowEx отправляет сообщения WM_NCCREATE, WM_NCCALCSIZE и WM_CREATE в окно создания.
Сведения о сдерживании ли панели задач отображает кнопку для созданного окна содержатся в разделе Видимость кнопки панели задач.
Следующие классы предопределенных элементов управления могут быть указаны в параметре lpClassName . Примечание соответствующие управления стилей, вы можете использовать в параметре dwStyle.
Класс | Значение |
---|---|
КНОПКА | Назначает небольшие прямоугольные дочернее окно, представляющий кнопку, которую пользователь может щелкнуть, чтобы включить или отключить. Элементы управления Button можно использовать отдельно или в составе групп, и они могут либо маркироваться или представляются без текста. Элементы управления Button обычно изменить внешний вид, когда пользователь щелкает им. Для получения дополнительной информации см. кнопки. |
Для таблицы стилей кнопок, которые можно указать в параметре dwStyle смотрите Стили. | |
COMBOBOX | Определяет элемент управления, состоящий из списка и поля выбора, аналогичный элемент управления редактирования. При использовании этого стиля, приложение должно отображать поле списка в любое время или списком флажок Включить. Если виден в списке, ввести символы в поле Выбор подчеркивает первая запись поля списка, соответствующий символы, введенные. И наоборот при выборе элемента в поле со списком отображается выбранный текст в поле выбора. Для получения дополнительной информации смотрите Списками. |
Для таблицы стилей поле со списком можно указать в параметре dwStyle смотрите Combo Box стили. | |
РЕДАКТИРОВАНИЕ | Определяет прямоугольную дочернее окно, в которое пользователь может ввести текст с помощью клавиатуры. Пользователь выбирает элемент управления и дает ему фокус клавиатуры, щелкнув ее или перехода к ней, нажав клавишу tab. Пользователь может ввести текст, когда элемент управления отображается мигающий курсор; с помощью мыши переместите курсор, выберите символы для покупки, или поместите курсор вставки символов; или используйте клавишу backspace для удаления символов. Дополнительные сведения содержатся в разделе Редактирования элементов управления. |
Для таблицы стилей элемента управления редактирования, можно указать в параметре dwStyle смотрите Редактировать стили управления. | |
LISTBOX | Задает список строк символов. Всякий раз, когда приложение должно представить перечень имена, такие как имена файлов, из которого пользователь может укажите этот элемент управления. Пользователь может выбрать строку, щелкнув его. Выбранные строка будет выделена, и сообщение уведомления передаётся в родительском окне. Для получения дополнительной информации смотрите Списки. |
Для таблицы стилей окна списка можно указать в параметре dwStyle смотрите Список стилей окна. | |
MDICLIENT | Назначает окно клиента MDI. Это окно получает сообщения, которые управляют дочерних окон MDI-приложении. Рекомендуемый стиль бит являются WS_CLIPCHILDREN и WS_CHILD. Укажите стили WS_HSCROLL и WS_VSCROLL для создания окна клиента MDI, который позволяет пользователю для прокручивания дочерних окон интерфейса MDI. Дополнительные сведения содержатся в разделе Многодокументный интерфейс. |
RichEdit | Определяет элемент управления Rich Edit версии 1.0. Это окно позволяет зрения пользователей редактировать текст с форматирование символов и абзацев и может включать в себя встроенный COM-объекты. Для получения дополнительной информации см. Многофункциональные элементы управления редактирования. |
Для таблицы стилей элемента управления rich edit, можно указать в параметре dwStyle смотрите Рич редактировать стили управления. | |
RICHEDIT_CLASS | Определяет элемент управления Rich Edit версии 2.0. Этот контроль пусть пользователь представление редактирования текста с форматирование символов и абзацев и может включать в себя встроенный COM-объекты. Для получения дополнительной информации см. Многофункциональные элементы управления редактирования. |
Для таблицы стилей элемента управления rich edit, можно указать в параметре dwStyle смотрите Рич редактировать стили управления. | |
ПОЛОСА ПРОКРУТКИ | Задает прямоугольник, содержащий бегунка и имеет направление стрелки на обоих концах. Полоса прокрутки отправляет сообщение уведомления родительского окна всякий раз, когда пользователь щелкает элемент управления. Родительское окно отвечает за обновление положение полосы прокрутки при необходимости. Для получения дополнительной информации смотрите Полосы прокрутки. |
Для таблицы стилей элементов управления панель прокрутки, можно указать в параметре dwStyle смотрите Стили элементов управления панель прокрутки. | |
СТАТИЧЕСКИЙ | Определяет простое текстовое поле, поле или прямоугольник, используются для этикетки, коробки или отдельные другие элементы управления. Статические элементы управления принимать входные данные не и обеспечивают отсутствие вывода. Для получения дополнительной информации см. Статические элементы управления. |
Для таблицы стилей статического элемента управления, который можно указать в параметре dwStyle смотрите Статические стили элементов управления. |
Windows 95: Система может поддерживать до 16,364 оконных дескрипторов.
Windows CE: Windows CE не поддерживает самостоятельные меню бара. HMenu параметр должен иметь значение NULL, если только оно не используется как идентификатор дочернего окна.
Windows CE версии 2.0 и более поздних поддерживают следующие два расширенных стилей окна:
Не поддерживаются следующие флаги dwExStyle.
WS_EX_ACCEPTFILES | WS_EX_LEFTSCROLLBAR |
WS_EX_LEFT | WS_EX_MDICHILD |
WS_EX_LTRREADING | WS_EX_PALETTEWINDOW |
WS_EX_NOPARENTNOTIFY | WS_EX_RIGHTSCROLLBAR |
WS_EX_RIGHT | WS_EX_TOOLWINDOW |
WS_EX_RTLREADING | WS_EX_TRANSPARENT |
WS_EX_APPWINDOW |
Windows CE 1.0 не поддерживает WS_EX_TOPMOST стиль. Версии 2.0 и более поздних ду.
Не поддерживаются следующие флаги dwStyle.
WS_CHILDWINDOW | WS_ICONIC |
WS_MAXIMIZE | WS_MAXIMIZEBOX |
WS_MINIMIZE | WS_MINIMIZEBOX |
WS_OVERLAPPEDWINDOW | WS_POPUPWINDOW |
WS_SIZEBOX | WS_THICKFRAME |
WS_TILED | WS_TILEDWINDOW |
Все окна неявно имеют стили WS_CLIPSIBLINGS и WS_CLIPCHILDREN.
Windows CE 1.0 не поддерживает собственные окна, за исключением диалоговых окон. Если параметр hwndParent не является NULL, окно неявно получает стиль WS_CHILD.
nbsp; Windows &NT: требует версии 3.1 или более поздней версии.
Windows:Требует Windows 95 или более поздней версии.
Windows CE:Требует версии 1.0 или более поздней версии.
Заголовок:Объявленные в winuser.h.
Импорта библиотеки:Используйте user32.lib.
Юникод:В версии Юникода и ANSI в Windows NT.
Обзор Windows, окно функции, CLIENTCREATESTRUCT, CREATESTRUCT, CreateWindow, GlobalAddAtom, RegisterClassEx, SetWindowPos, WM_CREATE, WM_NCCALCSIZE, WM_NCCREATE, WM_PAINT, WM_PARENTNOTIFY