OberonCore https://forum.oberoncore.ru/ |
|
Фикс ресайза окон https://forum.oberoncore.ru/viewtopic.php?f=131&t=3470 |
Страница 1 из 1 |
Автор: | Info21 [ Понедельник, 06 Июнь, 2011 22:55 ] |
Заголовок сообщения: | Re: Фикс ресайза окон |
ilovb писал(а): в BlackBox окна перерисовываются только при растяжении окна. А при уменьшении размеров перерисовка происходит только в момент отпускания кнопки мыши. А как выключить перерисовку при растяжении? Фикс включающий репайнт при любых изменениях размера выделен красным Раз уж Вы въехали в предмет. |
Автор: | ilovb [ Вторник, 07 Июнь, 2011 08:31 ] |
Заголовок сообщения: | Re: Фикс ресайза окон |
А вы представляете себе как ужасно это будет выглядеть? На сколько я понял логику винапи, в стародавние времена разработчики ориентировались на статическое содержимое окон. В итоге уменьшение окна не приводит к невалидности содержимого (оно просто обрезается границами окна). И достаточно только дорисовать скроллбары. А вот растяжение открывает скрытые участки содержимого, т.е. окно становится невалидным. Для динамического содержимого нужно перерисовывать всегда. |
Автор: | Пётр Кушнир [ Вторник, 07 Июнь, 2011 09:17 ] |
Заголовок сообщения: | Re: Фикс ресайза окон |
всё работает. один момент - текст с картинки копировать неудобно |
Автор: | Евгений Темиргалеев [ Среда, 06 Ноябрь, 2013 16:48 ] |
Заголовок сообщения: | Re: Фикс ресайза окон |
Info21 писал(а): А как выключить перерисовку при растяжении? В настройках системы. Для XP --- свойства системы, дополнительно, быстродействие, параметры; закладка "визуальные эффекты", галка "отображать содержимое окна при перетаскивании". Для 7-ки в классической шкуре, кажется, тоже есть; про другие шкуры не знаю.
|
Автор: | Евгений Темиргалеев [ Среда, 06 Ноябрь, 2013 17:04 ] |
Заголовок сообщения: | Re: Фикс ресайза окон |
ilovb писал(а): На сколько я понял логику винапи, в стародавние времена разработчики ориентировались на статическое содержимое окон. В итоге уменьшение окна не приводит к невалидности содержимого (оно просто обрезается границами окна). И достаточно только дорисовать скроллбары. А вот растяжение открывает скрытые участки содержимого, т.е. окно становится невалидным. Для текстов в которых ширина документа по размеру листа, а не размеру окна, содержимое окна и есть статическое. Полная перерисовка при увеличении не нужна.Для динамического содержимого нужно перерисовывать всегда. А много ли документов, в которых она требуется? (сам этого не вижу, потому что у меня при изменении размера перерисовывается только рамка) |
Автор: | ilovb [ Среда, 06 Ноябрь, 2013 18:34 ] |
Заголовок сообщения: | Re: Фикс ресайза окон |
Евгений Темиргалеев писал(а): Для текстов в которых ширина документа по размеру листа, а не размеру окна, содержимое окна и есть статическое. Полная перерисовка при увеличении не нужна. А много ли документов, в которых она требуется? (сам этого не вижу, потому что у меня при изменении размера перерисовывается только рамка) Ну на мой взгляд перерисовка должна быть всегда для графики (типа графиков Ивана). Для документов по размеру листа действительно не нужно. Но лично я всегда документы ставлю под размер окна. |
Автор: | Евгений Темиргалеев [ Среда, 06 Ноябрь, 2013 19:01 ] |
Заголовок сообщения: | Re: Фикс ресайза окон |
Кстати, какие есть возражения против того, чтобы написать просто в стиле оригинала? class.style := {0, 1, 3, 5} (* vredraw, hredraw, doubleclicks, privat dc *) |
Автор: | ilovb [ Среда, 06 Ноябрь, 2013 19:16 ] |
Заголовок сообщения: | Re: Фикс ресайза окон |
Никаких. Так даже кошернее. |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |