................. mov eax,DesktopRect.bottom sub eax,DlgHeight shr eax,1 push eax mov eax,DesktopRect.right sub eax,DlgWidth shr eax,1 push eax push hWnd call MoveWindow Функция принимает координаты верхнего левого угла . Не пойму , что там делает shr eax,1 На кой он нужен ?
Hmm shr eax,1 это деление на 2 для центровки диалога в экране. Вообще-то чем пость такой вопрос проще поставить комментарий на непонятной строчке и глянуть результат
Деление на 2 ? Кто ж мог знать ... :\ Не , всеравно не догоняю .Оно берет bottom десктопа (600 ?) . Отнимает от него высоту окна битмапа(250 , кажется). И делит это на 2 ... Потом то же самое по горизонтали ... Где там середина ?
половина от разности размера экрана и размера окна слева от окна, а другая половина этой разности справа )) это и есть центрирование )) Или ты просто прикалываешься ?
все очень просто ... если есть экран размером W на H и в его центре надо отобразить прямоугольник размером w на h то верхний левый угол этого прямоугольника будет находиться в точке (W-w)/2, (H-h)/2 ... чтож тут не понятного?