Вниз
Скачать: 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.014 c
1-98599
Александр из Минска
2003-10-19 14:23
2003.10.30
Обращение к компоненту


14-98879
никто
2003-10-09 13:51
2003.10.30
mysql


14-98876
Ketmar
2003-10-12 10:16
2003.10.30
DarkEyeProxy v0.2.1


4-98942
G A M E R
2003-08-24 15:01
2003.10.30
Вопрос по окнам


3-98470
Dim!S
2003-10-10 08:06
2003.10.30
Колонка в DBGrid




   Наверх