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

Вниз

Плавная прокрутка TStringGrid   Найти похожие ветки 

 
strgrid   (2008-06-09 20:13) [0]

[b]Как сделать прокрутку (вертикальную) не по строкам грида, а попиксельно (с определенным фиксированным шагом)?[/b]

[b]И соответственно как лучше исправить поведение ScrollBar"ов TStringGrid"a под новый формат прокрутки?[/b]

Всяко разно пробовал подойти к решению задачи. Излазил кучу ресурсов.

Смотрел в сторону ModifyPixelScrollBar и FColOffset"a (используется для горизонтальной попиксельной прокрутки при 1 столбце), не подходит.

Нужно решение, которое повторяет архитектуру TStringGrid"a (у меня над ним обертка, 3rd party, именно ее и нужно заставить прокручиваться попиксельно). Найденный на просторах инета NiceGrid - просто не удовлетворяет требованиям архитектуры Borland VCL.


 
tesseract ©   (2008-06-09 20:59) [1]

Периписать отрисовку TStringGrid с нуля. Форумы / статьи тут навряд ли помогут, мозги надо включать, недели на 3.


 
Тын-Дын ©   (2008-06-09 23:12) [2]


> strgrid   (09.06.08 20:13) 


Как вариант:

Положи TStringGrid  и TScrollBar на TPanel.
Grid растяни по вертикали на высоту всех строк (на панели не видно будет, естественно).
При движении скроллбара двигай используй метод TPanel1.ScrollBy(0,Y);


 
Германн ©   (2008-06-10 01:18) [3]


> Нужно решение, которое повторяет архитектуру TStringGrid"a
> (у меня над ним обертка, 3rd party, именно ее и нужно заставить
> прокручиваться попиксельно).

И зачем люди сами себе создают такой геморрой? ССЗБ?


 
DrPass ©   (2008-06-10 01:27) [4]


> Положи TStringGrid  и TScrollBar на TPanel.
> Grid растяни по вертикали на высоту всех строк (на панели
> не видно будет, естественно).
> При движении скроллбара двигай используй метод TPanel1.ScrollBy(0,
> Y);

Эээ... а компоненту ScrollBox со вкладки Advanced чё не взять-то?


 
Тын-Дын ©   (2008-06-10 01:46) [5]


> Эээ... а компоненту ScrollBox со вкладки Advanced чё не
> взять-то?


Уг. Просто лень вспоминать было, где он в палитре находится.
Да и забыл про него-)


 
Германн ©   (2008-06-10 02:10) [6]


> DrPass ©   (10.06.08 01:27) [4]

А "Новички" не знают, что есть палитра!
P.S. "Смысловое ударение" можешь указать любое. (Либо на "есть", либо на "что").


 
strgrid   (2008-06-10 06:37) [7]

> Германн ©   (10.06.08 02:10) [6]
Всякое бывает.

> Тын-Дын ©   (09.06.08 23:12) [2]
> DrPass ©   (10.06.08 01:27) [4]
Проблема в том, что грид на 2000-3000 строк (виртуальный), средний размер строки 60 px. В итоге уже где-то на половине строк встает проблема длины компонента. Кто именно "глючит" (максимальный размер задан? хотя сомневаюсь что там стоит лимит) либо максимальный range scrollbar"a у TScrollBox"a.


 
NYMEZIDE   (2008-11-22 18:29) [8]

StringGrid1.Options
последняя опция



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

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

Наверх




Память: 0.48 MB
Время: 0.012 c
2-1255382356
Дениска
2009-10-13 01:19
2009.11.29
Пишу программу по перегонке данных...


11-1208300624
zldo
2008-04-16 03:03
2009.11.29
WaitForSingleObject


15-1254234150
Частный инвестор
2009-09-29 18:22
2009.11.29
Идеи для бизнеса


2-1255364278
33Rus
2009-10-12 20:17
2009.11.29
Проблема с DeviceIoControl


2-1253455939
antonn
2009-09-20 18:12
2009.11.29
процедура возвращающая параметр заполняемые в потоке