Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / синхронный скроллинг 2-х гридов / 7 сообщений из 7, страница 1 из 1
17.12.2004, 06:25:20
    #32831423
Настенька
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
синхронный скроллинг 2-х гридов
у меня на форме стоят 2 грида, одинаковые по ширине и кол-ву колонок.
мне надо сделать вот что: когда я прокручиваю скроллбар 1-го грида,
во втором гриде он также должен идентично прокручиваться. я сделала код, он работает, только если я прокручиваю вправо, а влево не работает.

Private Sub DataGrid1_Scroll(Cancel As Integer)
On Error GoTo m:
i = i + 1
If (i Mod 2) = 1 Then DBGrid1.Scroll 1, 0
m: Exit Sub
End Sub

и еще, это работает, когда я нажимаю правую кнопку скроллбара, а когда за сам движок тяну, там начинаются косяки. подскажите, что делать?
...
Рейтинг: 0 / 0
17.12.2004, 10:12:35
    #32831638
_bob
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
синхронный скроллинг 2-х гридов
пару лет назад я делал то же самое, + была проблема в дергании скроллбаров при автоматическом рефреше гридов

я выключил скроллбары у гридов и сделал свои, только вот стандартные VScrollbar и HScrollbar при изменении свойства max часто вызывают ошибку и валят программу, так что если последуешь моему примеру, используй скроллбары из какого-нибудь набора контролов, сторонние производители типа Crescent их кучу наделали
------------------
Best regards, _bob
...
Рейтинг: 0 / 0
17.12.2004, 10:24:08
    #32831671
Настенька
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
синхронный скроллинг 2-х гридов
нет, у меня нет никакого мигания и затормаживания, все отлично работает, но только вправо, а влево - нет. а как влево все это сделать?
...
Рейтинг: 0 / 0
17.12.2004, 11:47:18
    #32831936
_bob
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
синхронный скроллинг 2-х гридов
мигания у тебя нет, потому что автоматического обновления грида нет

у тебя не работает потому, что при щелчке ты делаешь скролл вниз или влево(DBGrid1.Scroll 1, 0) - это скролл на одну колонку влево


скролл вверх-вниз предлагаю тебе сделать так
DBGrid2.firstrow = DBGrid1.firstrow
оба грида будут всегда на одной и той же записи (в случае одинаковых рекодсетов)
если рекордсеты разные, просто нужно двигать на одно и то же кол-во записей, тогда запоминай последний firstrow (в переменной уровня формы), считай на сколько позиций сдвинулся грид и на это же количество сдвигай второй

скролл влево-вправо точно так же, только используй свойство DBGrid2.LeftCol = DBGrid1.LeftCol

------------------
Best regards, _bob
...
Рейтинг: 0 / 0
17.12.2004, 12:10:57
    #32832003
Настенька
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
синхронный скроллинг 2-х гридов
мне как раз нужен скролл влево-вправо. вот этот кусок кода:
DataGrid1.LeftCol = DBGrid1.LeftCol
куда его вставлять, в какую процедуру?
...
Рейтинг: 0 / 0
17.12.2004, 12:18:01
    #32832026
Настенька
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
синхронный скроллинг 2-х гридов
все сделала, все работает, гениальный код. спасибо большое.
...
Рейтинг: 0 / 0
17.12.2004, 12:25:35
    #32832040
Настенька
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
синхронный скроллинг 2-х гридов
все сделала, все работает, гениальный код. спасибо большое.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / синхронный скроллинг 2-х гридов / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]