такой вопрос: как определять нада ставить квадратные скобочки или нет? Пример: Код (Text): invoke ShowWindow, [_hwnd], SW_SHOW
Loginanton Пишу на MASM, но предположительно в зависимости от того, интересует ли Вас смещение переменной _hwnd или значение соответствующей ячейки памяти
Я немного другое хотел узнать. Я хотел чтоб мне обьяснили как определять нужно ли ставить скобки или нет, или подсказали где почитать на эту тему
Нужно ставить, так как BOOL ShowWindow( HWND hWnd, int nCmdShow ); тоесть надо передавать значение hWnd а не указатель.
Люди а как сделать чтоб окно моё по середине экрана было? Я обратил внимание что это от хендла зависит
1. SetWindowPos Код (Text): BOOL SetWindowPos( HWND hWnd, // описатель(хендл) окна HWND hWndInsertAfter, // расположение int X, // горизонталь int Y, // вертикаль int cx, // ширина int cy, // высота UINT uFlags // флаги ); 2. CreateWindowEx Код (Text): HWND CreateWindowEx( DWORD dwExStyle, // расширеный стиль окна .... .... .... ); invoke CreateWindowEx, WS_EX_WINDOWEDGE or WS_EX_TOPMOST...
нет ну вот для CreateWindowEx есть параметры X и Y, для которых можно написать значение CW_USEDEFAULT, которое вроде и должно выставлять окно по центру, а оно, у меня к примеру, не по центру
Код (Text): TopXY proc wDim:DWORD, sDim:DWORD shr sDim, 1 ; divide screen dimension by 2 shr wDim, 1 ; divide window dimension by 2 mov eax, wDim ; copy window dimension into eax sub sDim, eax ; sub half win dimension from half screen dimension mov eax,sDim ret TopXY endp RegClass proc x:dword,y:dword,wnd:dword,ClassName:dword,AppName:dword .... LOCAL Wtx :dword LOCAL Wty :dword ...... invoke GetSystemMetrics,SM_CXSCREEN invoke TopXY,x,eax mov Wtx, eax invoke GetSystemMetrics,SM_CYSCREEN invoke TopXY,y,eax mov Wty, eax invoke CreateWindowEx,WS_EX_OVERLAPPEDWINDOW or WS_TILED,ClassName,AppName,\ WS_OVERLAPPED or WS_SYSMENU,Wtx,Wty,x,y,0,0,hInstance,0 x,y это ширина и высота окна Wtx,Wty положение на экране