WS_EX_TOOLWINDOW
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.216.109] |
|
|
Правила раздела Visual C++ / MFC / WTL (далее Раздела)
FAQ Раздела
Обновления для FAQ Раздела
Поиск по Разделу
MSDN Library Online
WS_EX_TOOLWINDOW
|
Сообщ.
#1
,
|
|
|
|
Как создать окно WS_EX_TOOLWINDOW без синей полосы заголовка?
Делаю так: CreateWindowEx (WS_EX_TOOLWINDOW Or WS_EX_TOPMOST, szWindowClass, "", WS_BORDER, x, y, cx, cy, 0, 0, hInstance, 0) Все равно видно заголовок. |
|
Сообщ.
#2
,
|
|
|
|
Попробуй так:
![]() ![]() CreateWindowEx (WS_EX_TOOLWINDOW | WS_EX_TOPMOST, szWindowClass, "", WS_BORDER, x, y, cx, cy, 0, 0, hInstance, 0) Добавлено Еще добавь WS_POPUP |
|
Сообщ.
#3
,
|
|
|
|
убрать стиль WS_SYSMENU
|
|
Сообщ.
#4
,
|
|
|
|
Цитата Dr_ShpitsVogel @ убрать стиль WS_SYSMENU Откуда? |
|
Сообщ.
#5
,
|
|
|
|
2 Uncle_Bob:
из свойств создаваемого окна, вроде при стиле WS_EX_TOOLWINDOW заголовок не убирается... |
|
Сообщ.
#6
,
|
|
|
|
Цитата Dr_ShpitsVogel @ вроде при стиле WS_EX_TOOLWINDOW заголовок не убирается Без WS_CAPTION заголовка не будет. |
|
Сообщ.
#7
,
|
|
|
|
Попробуй сделать так:
![]() ![]() HWND hWnd = CreateWindowEx(WS_EX_APPWINDOW, szWindowClass, "Название окна", WS_POPUP | WS_VISIBLE, x, y, cx, cy, HWND_DESKTOP, NULL, hInstance, NULL); Будет создано окно без заголовка. |
|
Сообщ.
#8
,
|
|
|
|
Мне нужно именно WS_EX_TOOLWINDOW. А как убирать стили?
|
|
Сообщ.
#9
,
|
|
|
|
Ничего не убирай, просто добавь WS_POPUP.
А убрать: ![]() ![]() DWORD dw = GetWindowLong(m_hWnd, GWL_STYLE); SetWindowLong(m_hWnd, GWL_STYLE, dw | ~WS_CAPTION); Добавлено MOHAX, если хотим убрать заголовок, то текст в параметр lpWindowName ф-ции, писать ненадо |
|
Сообщ.
#10
,
|
|
|
|
Вообще-то я VBшник
, не могли бы вы объяснить, что означает "~" в SetWindowLong(m_hWnd, GWL_STYLE, dw | ~WS_CAPTION)? |
|
Сообщ.
#11
,
|
|
|
|
Antonariy "~" означает битовый NOT а "!" логический NOT.
|
|
Сообщ.
#12
,
|
|
|
|
Всем спасибо, в итоге то, что нужно получилось так:
h = CreateWindowEx(0, szWindowClass, "", 0, x, y, cx, cy, 0, 0, hInstance, 0) SetWindowLong h, GWL_STYLE, WS_BORDER SetWindowLong h, GWL_EXSTYLE, WS_EX_TOOLWINDOW Or WS_CAPTION |
|
Сообщ.
#13
,
|
|
|
|
Вместо SetWindowLong лучше использовать ModifyStyle
1 параметр - тот стиль который нужно убрать (если убирать ничего не надо то пишем 0) 2 параметр - добавляемые стили 3 параметр - точно не помню но он не обязательныйПодробнее в MSDN |
|
Сообщ.
#14
,
|
|
|
|
Antonariy, а зачем вообще SetWindowLong? Почему нельзя стили сразу выставить в CreateWindow(Ex)?
|