Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2018.02.11;
Скачать: CL | DM;

Вниз

WM_WINDOWPOSCHANGED   Найти похожие ветки 

 
Dmk ©   (2016-01-30 19:51) [0]

Всем привет! Если использовать VCL, то при изменении окна в состояние WM_MAXIMIZED данное событие вызывается 2 раза. Если WINAPI, то 1 раз. Вопрос такой: как пропустить в VCL второй раз, т.е. отследить только последнее событие?
Пробовал изменить параметры анимации окон, но результат тот же. При развороте окна WM_WINDOWPOSCHANGED вызывается 2 раза, а при сворачивании 1 раз.


 
Забыл пароль   (2016-01-31 19:11) [1]

В VCL многое не как в API. Частая причина - главное окно и очередь сообщений - это TApplication. А все формы - полу-дочерние.


 
KSergey ©   (2016-02-08 11:52) [2]

Может у окна есть признак "я максимизировано" - по нему можно понять, что WM_MAXIMIZED пришло уже максимизированному окну, т.е. второй раз?


 
Dmk ©   (2016-02-08 16:20) [3]

Нету никакого признака. Сразу становится Maximized, еще до полного разворота. Поставил БП на сообщение - получил даже 6 раз!!! изменения размера окна. В VCL окно сначала разворачивается по вертикали, потом еще раз по горизонтали. В промежутках вызывается WM_ERASEBKGND. в WinApi сразу в нужный размер за 1 раз. Если поставить в OnResize, то вызывается 1 раз, но мне не годится это. Мне в сообщении надо. Там перерасчет происходит. Просто моргает много :( Тут видимо либо совсем без VCL, либо только VCL.


 
Dmk ©   (2016-02-19 12:39) [4]

Если кому интересно, то разобрался. Если главная форма  MDI form, то при наличии Sanken edge у клиентской области, MDI child изменяет размер 2 раза. Если этот край убрать, то 1 раз. Сейчас все стало нормально.
Код:
      lpExStyle := lpExStyle and not (WS_EX_CLIENTEDGE);
      SetWindowLong(wnd, GWL_EXSTYLE, lpExStyle);



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

Текущий архив: 2018.02.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.004 c
2-1456006403
AgroFish
2016-02-21 01:13
2018.02.11
Помогите прочитать файл


2-1455641950
Дмитрий
2016-02-16 19:59
2018.02.11
Программное создание dbf


2-1455961562
JohnKorsh
2016-02-20 12:46
2018.02.11
Запись со входа аудиокарты.


4-1283707527
irzyxa
2010-09-05 21:25
2018.02.11
Отмена меню пуск


11-1266590664
Dimaxx
2010-02-19 17:44
2018.02.11
Добавление айтемов одного PTree в другой