OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Понедельник, 22 Октябрь, 2018 23:36

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
 Заголовок сообщения: Как ограничить размеры окна?
СообщениеДобавлено: Воскресенье, 16 Май, 2010 14:11 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2930
Откуда: г. Ярославль
На поле битвы за ресайз
(viewtopic.php?f=24&t=2622
viewtopic.php?f=24&t=2645),
всплыла новая проблема.

Пользователь может так уменьшить окно, что масштабирование контролов приведёт к ошибкам округления. Да и уменьшать менее определённого размера (когда контролы становятся попросту неработоспособными) нет смысла!

Поэтому понадобилась такая возможность, как ограничение размера окна. В винде есть такая возможность: если достигнут минимальный размер окна, то рамка размеров просто перестаёт действовать. Чтобы задавать минимальные размеры окна, в WinApi надо обработать уведомление WM_GETMINMAXINFO.

Я заглянул в HostWindows и обнаружил, что в обработчике DocWinHandler есть закомментаренный блок:
Код:
(*
      | USER32.WMGetMinMaxInfo:
         w := ThisWindow(wnd);
         IF (w # NIL) & (w.mw > 0) & (Windows.noResize IN w.flags) THEN
            pm := SYSTEM.VAL(USER32.PMinMaxInfo, lParam);
            pm.maxTrackSize.x := w.mw;
            pm.maxTrackSize.y := w.mh;
            Controllers.ResetCurrentPath();
            RETURN 0
         END
*)


Близок локоток, да не укусишь :) В ББ 1.6 тоже закомментарено. Что это? Разработчики сомневаются в работоспособности схемы или просто не успели отладить?


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2018, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB