Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.08.27;
Скачать: CL | DM;

Вниз

TScrollBox   Найти похожие ветки 

 
fog   (2006-08-06 00:27) [0]

Приспособил TImage для рисования графиков. Но есть одна проблема - как заставить TScrollBox "скролить" график, вызывая мой метод TImage.Paint?


 
GeLLeR ©   (2006-08-06 00:32) [1]

В процедуре ScrollChange вызывать процедуру TImage.Paint ?

Может я вопрос нетак понял?????


 
KilkennyCat ©   (2006-08-06 01:37) [2]

А разве скроллбокс не автоматом осуществяет прорисовку компонет непоместившихся? Ну или вариант [1].

Но ваще-то, не могу представить себе ни одного логического обоснования такого метода скроллинга непоместившегося изображения, а также использования TImage для рисования.
Есть ощущение, что автор работает методом "тыка".


 
fog   (2006-08-06 04:22) [3]

>GeLLeR
> В процедуре ScrollChange вызывать процедуру TImage.Paint ?

В ScrollBox"e и ниже нет ничего подобного.

>KilkennyCat
> А разве скроллбокс не автоматом осуществяет прорисовку компонет непоместившихся?

Осуществляет, но у меня вместо скроллинга одно мерцание и рисует одно и тоже. И для экономии времени TImage.Paint рисует только в видимую область, следовательно надо знать ScrollBar.ScrollPos.

>KilkennyCat
>Но ваще-то, не могу представить себе ни одного логического обоснования такого метода скроллинга непоместившегося изображения, а также использования TImage для рисования.
Есть ощущение, что автор работает методом "тыка".

Не "тыка", а по-быстрому. Лет 5 назад, реализовал примерно такую же задачу через TWinControl. Но он "ушел" вместе в "винтом" - RIP.

Вопрос же задал потому, что нашел это:
http://delphiworld.narod.ru/base/tscrollbox_scroll_event.html

Нельзя ли как-нибудь попроще?


 
KilkennyCat ©   (2006-08-06 10:36) [4]

Ужос.

Берем TBitMap. Рисуем все на нем. Берем два скроллбара и кидаем их по сторонам TPaintBox. В событиях изменения позиции скроллбаров пишем переход на отрисовку. В отрисовке пишем что-нить вроде BitBlt с TBitmap на TPaintBox, с координатами x и y  привязанными к позиции скроллбара...



Страницы: 1 вся ветка

Текущий архив: 2006.08.27;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.045 c
2-1155044934
fast2
2006-08-08 17:48
2006.08.27
Как второй раз не открыть дочерное окно?


15-1154073849
Petr V. Abramov
2006-07-28 12:04
2006.08.27
Oracle XE


9-1131488998
Ricks
2005-11-09 01:29
2006.08.27
Моделирования гравитации


15-1154069603
Elen
2006-07-28 10:53
2006.08.27
Ошибка в SoftICE


2-1154670842
Генадий
2006-08-04 09:54
2006.08.27
Dspack