![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Програмирование скролинга (выбор алгоритма) [D6, Win2k]
Skymen © (2007-10-31 11:22:00)Пишется компонент-редактор текстово-графический - стандартные компоненты типа Мемо и RichEdit не подходят - специфика задачи.
Отрисовка данных реализована, но встал вопрос как лучше организовать скролинг:
- либо вычислять какая часть будет видима и отрисовывать только ее (+функции редактора очевидно будут проще, - сложные вычисления какая же часть видима и реализация плавного скролинга)
- либо рисовать все сразу на длинном Canvase и засовывать в Scrollbox - (- функции редактора усложняются пересчетом экранных координат в координаты объектов и символов всего изображения, +scrolling фактически на шару, - боюсь сильного падения скорости при больших документах и расход памяти опять же)
Вопрос: Есть ли еще варианты? Есть ли у кого-нибудь подобный позитивный или негативный опыт? Интересно как скролинг реализован в Microsoft Word - может кто знает?
clickmaker (2007-10-31 11:40:00) [1]
> либо вычислять какая часть будет видима и отрисовывать только
> ее
да
плюс использовать memory-mapped bitmap, рисовать туда, а потом его - на канву
homm (2007-10-31 11:26:00) [2]> [0] Skymen (31.10.07 11:22)
> Интересно как скролинг реализован в Microsoft Word - может кто знает?
Ну ясно - понятно, что там десятки страниц перерисовываются на одну длинную канву каждый раз при перерисовки одного окошка…
Если что это стеб…