Вниз
Скачать: CL | DM;

Подвинуть окна   Найти похожие ветки 

 
jonni ©   (2003-08-25 16:09) [0]

проблема вот в чём:
я астанавливаб новий размер WorkArea

rcWork.Top:=50;
rcWork.Left:=50;
rcWork.Bottom:=GetSystemMetrics(SM_CYSCREEN);
rcWork.Right:=GetSystemMetrics(SM_CXSCREEN);
SystemParametersInfo (SPI_SETWORKAREA, 0, @rcWork, SPIF_SENDCHANGE);

и для верности засылаю сообщение:
SendMessage(HWND_BROADCAST,WM_WININICHANGE,0,0);

при этом только Desktop и моя программа меняют положение и размеры.... остальные окна не реагирубт на это, только если их свернуть и зановоразвернуть....

как жe можно застваить окна переместиться и изминить размери при изменение WorkArea.... так же как при перемещение TaskBar.??????????/

(регистрация сврего приложения как AppBar не подходит)


 
jonni ©   (2003-08-25 20:20) [1]

:(


 
DVM ©   (2003-08-26 13:14) [2]

Действительно интересно, это встроенная возможность окон/системы или функция оболочки? Без эксплорера все это не работает (имеется ввиду то что написано выше, т.е. автоупорядочивание окон при перемещении одного из аппбаров). Из этого можно предположить, что это функция оболочки/эксплорера. Но какая?

Может кто знает???

Собственно можно самому написать подобную функцию, циклически перебирая все топ-левел окна и подстраивать их размеры/двигать их. Но не хотелось бы изобретать заново велосипед. К тому же не совсем ясно по какому критерию отбирать окна которые должны реагировать на изменения рабочей области.

Функция наверняка в shell32.dll и недокументирована. Хотя может быть и в user32.dll если это встроенная функция системы.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.013 c
14-98799
ИМХО
2003-10-13 11:42
2003.10.30
Кто такой Тенцер?


1-98584
Dim!S
2003-10-20 09:57
2003.10.30
Определение usb-накопителя


3-98522
Nummer
2003-10-09 03:12
2003.10.30
допотопный SQL..


4-98922
SH
2003-08-26 17:32
2003.10.30
Как определить, что окно свёрнуто?


1-98702
Strateg23
2003-10-16 11:21
2003.10.30
Как обновить ActionToolBar?




   Наверх