pva
12-10-2004, 07:47
Субклассил ToolBar и TabControl.
1. При первом появлении TabControl неправильно располагаются окна (располагаю на WM_SIZE)
2. При смене стиля XP на классический залазит в верх окна ToolBar (он туда лезет по WM_SIZE обычно). Я вроде всё отключил (от его DefaultProc), т.е.
WM_SIZE,
WM_WINDOWPOSCHANGED,
WM_WINDOWPOSCHANGING,
WM_SETTINGCHANGE.
3. При смене стиля на XP и обратно форма не восстанавливает свой вид (в той части, где стоят MDI-клиенты)
Пока что решил это дополнительным вызовом alignControls() (которя всё располагает) при перерисовке формы, но лишние вызовы этой функции меня смущают.
И ещё: как заставить MDI-клиента срабатывать на Ctrl+Tab? Из n=0..2 штуки, у каждого ID=0x1000+0x100*n (то, что в CLIENTCREATESTRUCT) В главном цикле есть IsMdiFrameMsg? относящееся к первому клиенту.
1. При первом появлении TabControl неправильно располагаются окна (располагаю на WM_SIZE)
2. При смене стиля XP на классический залазит в верх окна ToolBar (он туда лезет по WM_SIZE обычно). Я вроде всё отключил (от его DefaultProc), т.е.
WM_SIZE,
WM_WINDOWPOSCHANGED,
WM_WINDOWPOSCHANGING,
WM_SETTINGCHANGE.
3. При смене стиля на XP и обратно форма не восстанавливает свой вид (в той части, где стоят MDI-клиенты)
Пока что решил это дополнительным вызовом alignControls() (которя всё располагает) при перерисовке формы, но лишние вызовы этой функции меня смущают.
И ещё: как заставить MDI-клиента срабатывать на Ctrl+Tab? Из n=0..2 штуки, у каждого ID=0x1000+0x100*n (то, что в CLIENTCREATESTRUCT) В главном цикле есть IsMdiFrameMsg? относящееся к первому клиенту.