У вас будет новый класс
Зарегистрирует измененную структуру WNDCLASSEX. У вас будет новый класс окна, который будет обладать некоторыми характеристиками старого класса.
Создайте окна с помощью нового класса.
Суперклассинг лучше, чем сабклассинг, если вы хотите создать много контролов с одинаковыми характеристиками.
Пpимеp:
.386
.model flat,stdcall option casemap:none include \masm32\include\windows.inc include \masm32\include\user32.inc
include \masm32\include\kernel32.inc includelib \masm32\lib\user32.lib includelib \masm32\lib\kernel32.lib
WM_SUpERCLASS equ WM_USER+5 WinMain pROTO :DWORD,:DWORD,:DWORD,:DWORD EditWndproc pROTO :DWORD,:DWORD,:DWORD,:DWORD
.data ClassName db "SuperclassWinClass",0
AppName db "Superclassing Demo",0 EditClass db "EDIT",0 OurClass db "SUpEREDITCLASS",0 Message db "You pressed the Enter key in the text box!",0
.data? hInstance dd ?
hwndEdit dd 6 dup(?) OldWndproc dd ?
.code start: invoke GetModuleHandle, NULL mov hInstance,eax
invoke WinMain, hInstance,NULL,NULL, SW_SHOWDEFAULT invoke Exitprocess,eax
WinMain proc hInst:HINSTANCE,hprevInst:HINSTANCE,CmdLine:LpSTR,CmdShow:DWORD LOCAL wc:WNDCLASSEX LOCAL msg:MSG
LOCAL hwnd:HWND
mov wc.cbSize,SIZEOF WNDCLASSEX
mov wc.style, CS_HREDRAW or CS_VREDRAW mov wc.lpfnWndproc, OFFSET Wndproc mov wc.cbClsExtra,NULL mov wc.cbWndExtra,NULL
push hInst pop wc.hInstance mov wc.hbrBackground,COLOR_AppWORKSpACE mov wc.lpszMenuName,NULL
mov wc.lpszClassName,OFFSET ClassName invoke LoadIcon,NULL,IDI_AppLICATION mov wc.hIcon,eax mov wc.hIconSm,eax
invoke LoadCursor,NULL,IDC_ARROW mov wc.hCursor,eax invoke RegisterClassEx, addr wc invoke CreateWindowEx,WS_EX_CLIENTEDGE+WS_EX_CONTROLpARENT,ADDR ClassName,ADDR AppName,\ WS_OVERLAppED+WS_CApTION+WS_SYSMENU+WS_MINIMIZEBOX+WS_MAXIMIZEBOX+WS_VISIBLE, \ CW_USEDEFAULT,350,220,NULL,NULL,\
hInst,NULL mov hwnd,eax
.while TRUE invoke GetMessage, ADDR msg,NULL,0,0 .BREAK .IF (!eax) invoke TranslateMessage, ADDR msg
invoke DispatchMessage, ADDR msg .endw mov eax,msg.wparam ret
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий