|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
15.03.2016, 17:24 | #1 |
Заблокирован
Регистрация: 06.02.2011
Сообщений: 1,999
|
Заполнение окна прямоугольниками
Добрый день!
Столкнулся с такой вот интересной задачей. Задача в принципе не сложная, но моя техническая реализация мне кажется не совсем разумной. Вся трудность заключается в сохранении текущих прямоугольников при изменении размеров окна, или по приказу ОС на перерисовку. думал создать контейнер для хранения текущих прямоугольников, но это будет каждую 0.1 с кушать ресурсы памяти. в итоге я получу аварийное завершение ((( может есть какое-то разумное решение этой проблемы ? Спасибо ! |
15.03.2016, 17:53 | #2 | |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Цитата:
Кто заставляет каждый раз перевыделять память вместо использования существующей? (или хотя бы освобождать то, что уже не нужно) Но вообще даже без освобождения пройдет немало времени пока память кончится если прямоугольников не 100500.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
|
15.03.2016, 18:09 | #3 |
Заблокирован
Регистрация: 06.02.2011
Сообщений: 1,999
|
это понятно.
только прямоугольники могут перекрывать друг-друга по истечению времени 0.1 с. в итоге время на перерисовку в WM_PAINT будет увеличиваться. в принципе есть возможность перерисовать часть окна Код:
|
15.03.2016, 18:18 | #4 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Из задания непонятно должны ли старые прямоугольники оставаться после добавления новых.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
15.03.2016, 18:22 | #5 | |
Заблокирован
Регистрация: 06.02.2011
Сообщений: 1,999
|
Цитата:
давайте их все-же оставим я в вин апи всех тонкостей не знаю , но мне лезит в голову только хранение всех созданных прямоугольников в контейнере. но это очень опасно. программа ведь может работать час....... |
|
15.03.2016, 18:26 | #6 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Ну проверяйте периодически какие прямоугольники уже полностью скрыты другими и удаляйте их. Другие варианты вряд ли есть.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
15.03.2016, 18:29 | #7 |
Заблокирован
Регистрация: 06.02.2011
Сообщений: 1,999
|
|
15.03.2016, 18:46 | #8 | |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Ну вы ж уже узнали, что без перерисовки по WM_PAINT
Цитата:
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
|
16.03.2016, 12:40 | #9 |
Заблокирован
Регистрация: 06.02.2011
Сообщений: 1,999
|
а с чего вы решили, что прямоугольники должны перекрывать друг-друга ?
там сказано заполнение окна, а каким образом оно будет заполнено - это уже дело фантазии. Последний раз редактировалось RAFA91; 16.03.2016 в 13:30. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Генетический алгоритм для покрытия матрицы прямоугольниками | BDA | Помощь студентам | 3 | 10.11.2014 13:39 |
Работа с массивом и прямоугольниками. | newBieInJava | Общие вопросы по Java, Java SE, Kotlin | 1 | 28.12.2013 22:05 |
Алгоритм заполнения области прямоугольниками | sciyy | Фриланс | 5 | 23.11.2013 01:33 |
задача с прямоугольниками | ilyha93 | Помощь студентам | 7 | 20.02.2012 20:37 |
Ось с прямоугольниками, найти общую площадь | sp.caster | Паскаль, Turbo Pascal, PascalABC.NET | 30 | 23.04.2011 08:27 |