Какой принцип отображение и перемещения окон лучше использовать?
Мне пришло в голову только создание уровней окон и запись участка экрана за каждым окном.
| Билли Боб |
Сообщение
#1
|
|
Новичок ![]() Группа: Пользователи Сообщений: 47 Пол: Мужской Репутация: 0 |
Какой принцип отображение и перемещения окон лучше использовать?
Мне пришло в голову только создание уровней окон и запись участка экрана за каждым окном. |
![]() ![]() |
| IUnknown |
Сообщение
#2
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 013 Пол: Мужской Ада: Разработчик Embarcadero Delphi: Сторонник Free Pascal: Разработчик Репутация: 627 |
Цитата посылаешь сообщение тому окну, которое было под перемещаемым, и таким образом будет перерисовано только некоторое кол-во окон. И зачем, собственно, надо перерисовывать полностью окно, лежащее ПОД тем, которое перетянули с места на место, а потом еще и перерисовывать само верхнее окно (фактически, тебе придется перерисовать ВСЕ окна, лежащие под рабочим, в порядке от нижнего к верхнему)?В Windows это реализовано на уровне регионов. Область, которую надо перерисовать, помечается как невалидная, и потом, при получении сообщения WM_PAINT, только эта область перерисовывается. Если у тебя есть окно, под которым лежат три других, и при смещении верхнего окна на 20 пикселей, на нижележащих открываются участки шириной 20 пикселей - то перерисованы будут именно и только эти 3 маленьких участка, а не все 3 нижних окна... Не надо равняться на Windows... Да и велосипедостроением тоже не надо заниматься. Под ДОС (и под ТР, кстати) есть прекрасная библиотека для построения граф. интерфейса, называется Graphic Vision (графический аналог Turbo Vision), скачай ее и посмотри, как оно там реализовано (насколько я помню, исходники доступны), или вообще пользуйся ей, а не самоделкой. |
Билли Боб Создание графических окон в TP. 22.09.2011 20:17
TarasBer Ничего записывать не надо.
Просто при сдвиге окна … 22.09.2011 20:47
Билли Боб но тогда ведь придется весь экран перерисовывать, … 22.09.2011 20:51
sheka Кстати, как это реализовано в Windows? Если не оши… 22.09.2011 20:52
Билли Боб а перемещаемое окно надо же как-то убрать с прежне… 22.09.2011 21:10
Билли Боб
так это же как раз и интересно :lol: 22.09.2011 21:48
Билли Боб
Все же можно поподробнее? 23.09.2011 3:40
IUnknown Все же можно поподробнее?
Читай 23.09.2011 4:03
Lapp Одобряю серьезный подход. Когда-то, в начале 90-х… 23.09.2011 6:55
Билли Боб
Жаль, что я ничего не понял.
Вот и я так, трети… 23.09.2011 7:05
TarasBer Просто вычисляешь границы участка A, который надо … 23.09.2011 13:26
IUnknown Помнится, в Windows 3.11 (да и в Win95 тоже, по-мо… 23.09.2011 13:46
TarasBer > хотя хотелось, чтоб при перемещении было видн… 23.09.2011 13:54
Билли Боб
да нет вроде, хотя название похоже
Тормозит из-з… 23.09.2011 15:26
SilentMage когда регионы отрисовки определены, части окон не … 6.10.2011 11:44![]() ![]() |
|
Текстовая версия | 26.12.2025 21:11 |