Schumi |
Отправлено: 17.10.2005, 14:15 |
|
Машинист паровоза
Группа: Участник
Сообщений: 206
|
Стоит такая задача — есть некая таблица — к примеру фиксированное число столбцов (а может и нет) и различное число строк. В ней отражаются определенные данные. Я хочу рисовать ее на paintbox.
Если человек скроллирует таблицу, то соответственно я просто смотрю по scrollbox позицию и относительно них рисую. И тут сразу возникает вопрос — а как перерисовывать — ведь, если будут размеры ячеек малые и соответственно их будет много, то ведь возникнет эффект мерцания, да и не так это будет быстро.
Но в целом алгоритм понятен. А вот если человек захочет перетащить какую-нибудь строку/столбец — то, допустим, он нажал мышку, держит ее и начинает двигать, то по всем правилам должна появиться некая "линия", по которой пользователь сможет судить о "потенциально" новом месте строки/столбца. И при каждом перемещении, нужно знать старую позицию — ее затирать, и рисовать на новом месте. Как-то получается геморно. Или я преувеличиваю?
|
|
gvg |
Отправлено: 17.10.2005, 14:44 |
|
Машинист паровоза
Группа: Участник
Сообщений: 222
|
То, что вы описали, уж очень смахивает на StringGrid. Стоит ли самому что-то выдумывать? |
|
olegenty |
Отправлено: 17.10.2005, 14:54 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
а ты задайся вопросом, как, например, TDBGridEh перерисовывается? а ещё лучше — посмотри исходники.
|
|
Schumi |
Отправлено: 18.10.2005, 19:15 |
|
Машинист паровоза
Группа: Участник
Сообщений: 206
|
QUOTE | То, что вы описали, уж очень смахивает на StringGrid. Стоит ли самому что-то выдумывать? |
Ну как бы сказать — если ширина оказывается пикселей так 4 и данные — это некоторые графические элементы, то учитывая быстродействие, то наверное, стоит выдумывать.
QUOTE | а ты задайся вопросом, как, например, TDBGridEh перерисовывается? а ещё лучше — посмотри исходники. |
Хорошо, завтра же задамся
|
|
|