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

Реакция на изменение системных метрих   Найти похожие ветки 

← →
h010d   (2004-03-31 23:42) [0]

Проблема следующая: если для формы указать Constraints на размеры и запустить приложение, то при изменении системных метрик (например размера caption"а) автоматически изменится размер формы, однако Constraints могут этому помешать. В итоге часть клиентской области будет "съедена" и появятся совсем неуместные полосы прокрутки. Как среагировать на изменения таких системных метрик и обновить значения Constraints.


← →
Cobalt ©   (2004-04-01 09:04) [1]

WM_SETTINGCHANGE


← →
GreatMaster   (2004-04-01 09:13) [2]

А если сделать Form1.AutoScroll false, то полосы прокрутки появляться не будут...


← →
h010d   (2004-04-01 12:20) [3]

> WM_SETTINGCHANGE
Пробовал ловить это сообщение, однако я так и не разобрался, как узнать какая метрика была изменена и на сколько

> А если сделать Form1.AutoScroll false
Однако часть клиентской области окна по прежнему останется "съеденой", так что к сожалению это проблему не решит.


← →
Cobalt ©   (2004-04-01 14:31) [4]

> я так и не разобрался, как узнать какая метрика была изменена и на сколько
И зачем это делать?
Просто определи функцию, которая будет устанавливать размеры в зависимости от текущих метрик (определи, какие метрики влияют и как), и при изменении (получении сообщения) пересчитывай, как это делает проводник (у него окна моргают).
Список метрик есть в функции SetXXXX (написана в справке по сообщению)


← →
h010d   (2004-04-01 16:08) [5]


> Cobalt

Спасибо.



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

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



Память: 0.46 MB
Время: 0.025 c
1-1080715500
Tack83
2004-03-31 10:45
2004.04.18
Всплывающие подсказки для TPopupMenu


14-1080200566
Ega23
2004-03-25 10:42
2004.04.18
По C++ вопрос будет, не бейте сильно :о)


7-1076701323
Khabibulin
2004-02-13 22:42
2004.04.18
Volume


1-1080539151
EvgeniyR
2004-03-29 09:45
2004.04.18
Handle


14-1080482122
KORN
2004-03-28 17:55
2004.04.18
Установка Win98 на другой диск?




   Наверх