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

Вниз

Скроллинг WinControl   Найти похожие ветки 

 
dosik   (2004-07-07 01:30) [0]

Уважаемые, доброе время суток!!! Пишу свой ListView только не на базе ListView_XXX макросов а полностью свой на базе WinConrol. Как организовать скроллинг приклепленной к нему канвы.

Заранее благодарен.
Дмитрий.


 
inic ©   (2004-07-07 10:54) [1]

Например, я делал так:
Было приватное поле FFirstVisibleRow;
Обрабатывая WM_VSCROLL меняю это поле его, и вызываю
InvalidateRect, в связи с чем в итоге вызывается Paint.
Там рисуешь все итемы с FFirstVisibleRow до ItemsPerScreen (тоже твой метод, который возвращает ClientHeight div FRowHeight). Тоже про колонки.
Насчет InvalidateRect -неуверен, что оптимально.
Можно например часть канвы которая была видна и осталась видна смещать и дорисовывать вновь появившиеся итемы.


 
dosik   (2004-07-07 13:26) [2]

Огромное спасибо за рекомендацию, но имелось в виду немного другое, что-то вроде TScrollBox и TImage внутри. Т.е. если рисунок вылазиет за пределы TImage (а в моем случае приклепленной канвы) и становится больше чем TScrollBox (мой компонент), то автоматически включается прокрутка.


 
Mim1 ©   (2004-07-07 21:56) [3]


> [2] dosik   (07.07.04 13:26)

Может тогда пронаследоваться от TScroledWinControl?


 
dosik   (2004-07-07 22:56) [4]

Ну я так и планирую , только вот там тоже геморои сови возникают )))



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

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

Наверх




Память: 0.47 MB
Время: 0.026 c
3-1090069782
Ands
2004-07-17 17:09
2004.08.15
Что быстрее: выборка из interbase или текстового файла?


3-1090247645
sergvc
2004-07-19 18:34
2004.08.15
как добавить в DataSet колонку не связанную с данными для временн


14-1091094994
Mellon
2004-07-29 13:56
2004.08.15
Народ помогите по компонентам пожайлуста


3-1090329688
Andrew
2004-07-20 17:21
2004.08.15
UpdateSql + тригеры: Как их "подружить"?


3-1090581669
Chery
2004-07-23 15:21
2004.08.15
Как организовать цикл таблицам (компоненты) Table1, ... Table10?