FAQ:WinAPI VCPP:отключить системное меню — различия между версиями
Материал из Весельчак У
RXL (обсуждение | вклад) (Новая: ===Как в главном окне отключить системное меню (в левом верхнем углу) и кнопки (в правом верхнем углу)?=== ...) |
RXL (обсуждение | вклад) |
||
Строка 28: | Строка 28: | ||
Пример 2. (для диалога) | Пример 2. (для диалога) | ||
+ | |||
Если диалог описан в ресурсах, то в свойствах диалога убрать галочки: | Если диалог описан в ресурсах, то в свойствах диалога убрать галочки: | ||
* "System menu" | * "System menu" |
Текущая версия на 15:36, 3 октября 2009
Как в главном окне отключить системное меню (в левом верхнем углу) и кнопки (в правом верхнем углу)?
При создании окна нужно убрать стиль WS_SYSMENU. Теперь пользователь корректно может закрыть окно только Alt+F4, ну, или если вы предоставите ему дополнительную возможность сделать это.
Пример 1. (для SDI, MDI)
// этот обработчик уже добавлен визардом BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs) { if (!CFrameWnd::PreCreateWindow(cs)) return FALSE; // TODO: Modify the Window class or styles here by modifying // the CREATESTRUCT cs /////////////////////////////// // добавленная часть { // убираем стиль cs.style& = ~WS_SYSMENU; } /////////////////////////////// return TRUE; }
Пример 2. (для диалога)
Если диалог описан в ресурсах, то в свойствах диалога убрать галочки:
- "System menu"
- "Minimize box"
- "Maximize box"