Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
Используется два DBGridEh, один подчинен другому, по команде контекстного меню в подчиненном гриде, изменяются данные, которые отображаются в основном гриде, после обновления данных с подчиненным гридом все вроде в порядке, а основной перерисовывает, вроде я только прогу запустил. Посоветуйте что-нибудь: как обновить данные в гриде без его перерисовки? Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2003, 14:04 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
а как ты без перересовки будещь обновлять грид ??? и что сие значит "без перересовки" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2003, 10:07 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
Это без скачка курсорной рамки на первую строку грида, как минимум ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2003, 14:20 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
id:=Query1.FieldByName('ID').AsString; Query1.False; Query1.True; Query1.Locate('ID',id,[]); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2003, 14:58 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
Типа (небольшой плагиат, сенкс ту Alex_): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2003, 15:06 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
И через BookMark можно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2003, 19:57 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
В любом случае, если количество записей превышает количество умещаемое для отображение (как минимум раза в два), скачок будет. Курсор то останется на той же строке, но передвинется на середину грида. Даже при использовании букмарков, дизейбл контролов и т.п. Глюки DBGridEh... Хотя может и не только его... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2003, 20:19 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
Особенно DBGridEh не любит DisableControl и букмарки... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2003, 20:21 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
Стандартный грид ведет себя точно так же. Помогает запоминание позиции текущей строки в гриде. После того, как Bookmark сделает ее первой в сетке, надо сделать еще и скроллинг. Но тут все очень запутанно. Помню, я реализовывал такую фичу, но хоть убей, не помню как. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2003, 20:24 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
Блин, наврал Ето я на Clippere делал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2003, 20:25 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
Да я с этом проблемой борюсь уже давно... Начальство ругается, что прыгает, а что делать... У него и подбитие итогов также работает... Пробуешь сделать RecalcAll, и... тот же эффект... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2003, 21:05 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
народ, а не замечали как торомозит DBEhGrid когда показывает в футере количество записей? как только уберу - так мгновенно а с SumList Active=True - как черепаха не знает кто как бороться с этим? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2003, 07:13 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
2Alexander2 > народ, а не замечали как торомозит DBEhGrid когда показывает в футере количество записей? как только уберу - так мгновенно а с SumList Active=True - как черепаха А чего удивляться? Что бы подсчитать количество идет выфетчивание всех записей на клиента. Если это отключить, то ждать конца фетча не надо. >не знает кто как бороться с этим? Ограничивай выборки. А агрегатные значения - отдельным запросом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2003, 08:33 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
>не знает кто как бороться с этим? Серега> Ограничивай выборки. А агрегатные значения - отдельным запросом. и сам заполняй SumList... Довольно просто... К тому же при редактировании в гриде, не совсем корректно итоги считаются... Бывают довольно интересные глюки... У меня в проге, все такие обработки приходится ручками делать... Начиная с подсчитывания итогов... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2003, 10:57 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
Я тут некоторое время назад задавал тот-же вопрос с варинтом локейта (Букмарки отпадают - так как они при квери клозе умирают). Но тогда все заглохло. Может кто-то всетаки скажет - есть свойства дающие индекс первой отображаемой в текущий момент строки - можно ли через это както восстанавливать - убирая скачок на середину. КТо-то говорил, что можно делать через Resync. - Может кто просветить как это - не отсылая на статью - так как код статьи у меня все равно не заработал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2003, 11:03 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
2 m_kus. Сенкс огромный! Хоть какое-то решение. Хотя на середину все-таки выставляет. Может кто-то знает про возможность запоминать верхнюю ОТОБРАЖАЕМУЮ строку? И от этого можно плясать? То есть после Query1.Active:= True выставлять эту запись опять верхней, а выделенной делать ту, которая и была выделена? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2003, 12:06 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
Если ADO Код: plaintext 1. 2. 3. А еще можно использовать самый крутейший грид - TDrawGrid. Чё хочу, то и ворочу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2003, 12:14 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
2 ZrenBy А чему у тебя константы adAffectCurrent, adResyncAllValues равны, а то у меня ругается на не описанные... В хелпе написано, что вроде как самомцу определять их надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2003, 12:28 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
2 ZrenBy Ну с константами я разобрался. Но на строке ADOQuery1.Recordset.Resync(adAffectCurrent,adResyncAllValues) выпадает по ошибке EOleException 'Недостаточно сведений из основной таблицы' - это что имеется ввиду? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2003, 12:56 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
Много чего. Во-первых, нужно определить Код: plaintext 1. 2. 3. 4. Естественно, нужно разрешение на select на MyTable и ID - PK ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2003, 13:15 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
2 ZrenBy А если в ADOQuery выбираются поля из нескольких таблиц, то что писать в Properties['Unique Table']? Таблицу того поля, которое изменилось? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2003, 13:34 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
2 ZrenBy И еще вопрос: в Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2003, 13:42 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
Я делаю в таких случаях вьюху и select * from MyView where ID = ?'; В Properties['Unique Table'] пишу, как бы это сказать, ту таблицу откуда берется ID. Если во вьюхе есть union то ничего не выйдет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2003, 13:44 |
|
||
|
Как обновить грид без его перерисовки?
|
|||
|---|---|---|---|
|
#18+
max_s Ну с константами я разобрался. Может и мне расскажешь - где их искать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2003, 13:44 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=32220590&tid=2117526]: |
0ms |
get settings: |
5ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
55ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
58ms |
get tp. blocked users: |
1ms |
| others: | 227ms |
| total: | 378ms |

| 0 / 0 |
