Форум: "Начинающим";
Текущий архив: 2008.07.20;
Скачать: [xml.tar.bz2];
ВнизПеремещение в DBGrid Найти похожие ветки
← →
Stif (2008-06-18 22:30) [0]Как выводить значения таблицы (ShowMessage) при перемещении по DBGrid (Пока получается только при клике) стрелками на клавиатуре.
← →
korneley © (2008-06-18 22:45) [1]Ну... для начала надо узнать название СУБД, типы используемых компонент(ов) и сообщить их имена. Здесь. Неплохо было бы, также сообщить, зачем жизненно необходимо ShowMessage() при перемещени по DBGrid.
← →
Stif (2008-06-18 22:49) [2]Субд FireBird
Проблема в том что не могу понять какое событие срабатывает при перемещении по гриду (TDBGrid) стрелками на клавиатуре.
ShowMessage только для проверки (можно вообщемто куда угодно выводить).
← →
{RASkov} © (2008-06-18 22:51) [3]> [2] Stif (18.06.08 22:49)
> ShowMessage только для проверки (можно вообщемто куда угодно
> выводить).
См AfterScroll у ДатаСета
← →
MsGuns © (2008-06-18 22:53) [4]>korneley © (18.06.08 22:45) [1]
>Ну... для начала надо узнать название СУБД, типы используемых компонент(ов) и сообщить их имена. Здесь.
А зачем ? Датасет - он и в Африке датасет
По сабжу.
Отслеживать нужно перемещение не по гриду, а по датасету (причем фиолетово каким образом - кнопками, ползунками, мышкой, кошкой..)
А для этого у ентого датасета имеется событие AfterScroll, и если написать в обработчике этого события
ShowMessage(DBGrid1.DataSource.DataSet.Fields[0].AsString));
то каждый раз, когда текущая запись датасета (выделяемая как текущая строка в гриде) изменится, будет окошечко с содержимым 1-го поля датасета (например)
← →
MsGuns © (2008-06-18 22:55) [5]А вот для того, чтобы "пасти" перемещение по полям одной и той же записи можно воспользоваться событиями самой сетки: OnColEnter, OnColExit
← →
korneley © (2008-06-18 22:58) [6]
> MsGuns © (18.06.08 22:53) [4]
> А зачем ? Датасет - он и в Африке
> датасет
Датасет-то он датасет, но ФИБ-ы поболе возможностей дают ;) К тому же после [2] проблема обозначилась, так что, считаю миссию выполненной :)
← →
MsGuns © (2008-06-18 23:21) [7]>Датасет-то он датасет, но ФИБ-ы поболе возможностей дают
Доллары рисовать умеют ?
← →
korneley © (2008-06-18 23:31) [8]
> MsGuns © (18.06.08 23:21) [7]
> Доллары рисовать умеют ?
Нормальная бумага + краска = лет 10 в итоге :) В фибовских компонентах управление AfterScroll порасширенней ( погибче?)
← →
MsGuns © (2008-06-18 23:38) [9]Мне просто интересно, в чем заключается "ширистость" ?
← →
korneley © (2008-06-18 23:49) [10]
> MsGuns © (18.06.08 23:38) [9]
Я не касаюсь макросов (это не совсем в тему), но избежать DataSet.Disable(Enable)Controls можно избежать. При связке мастер - детайл. Просто у события есть тайм-аут :)
← →
korneley © (2008-06-19 00:14) [11]Поясню. Отвлекают, блин :) Есть опция, включающая "ожидание" при прокрутке "мастера", и лишь потом переоткрывается детайл. На самом деле это и есть тот самый "AfterScroll". Иногда полезно, иногда - нет. На маленьких базах и быстрых машинах - вредно (имхо, естественно, ну, так можно и не включать) А вот с ростом объёма - полезность явно прибывает. Хотя, опять же, по месту смотреть надо... От того и вопрос об используемых компонентах доступа к базе.
← →
Игорь Шевченко © (2008-06-19 00:24) [12]
> Проблема в том что не могу понять какое событие срабатывает
> при перемещении по гриду (TDBGrid) стрелками на клавиатуре
Если вертикальными, то DataSource.DataChange
← →
Василий Жогарев © (2008-06-19 08:37) [13]
> > Проблема в том что не могу понять какое событие срабатывает
>
> > при перемещении по гриду (TDBGrid) стрелками на клавиатуреAfterScroll
&BeforeScroll
?...
← →
Sergey13 © (2008-06-19 09:01) [14]> [4] MsGuns © (18.06.08 22:53)
> А для этого у ентого датасета имеется событие AfterScroll,
> и если написать в обработчике этого события
>
> ShowMessage(DBGrid1.DataSource.DataSet.Fields[0].AsString));
А какой смысл в данном случае идти к записи через грид?
← →
Anatoly Podgoretsky © (2008-06-19 14:00) [15]> Sergey13 (19.06.2008 9:01:14) [14]
А какой смысл делать дополнительный кнопочки?
← →
Sergey13 © (2008-06-19 14:06) [16]> [15] Anatoly Podgoretsky © (19.06.08 14:00)
А при чем тут кнопочки? В обработчике датасета.
← →
Anatoly Podgoretsky © (2008-06-19 14:16) [17]> Sergey13 (19.06.2008 14:06:16) [16]
При том что сейчас перемещается по гриду стрелочками, про чего ты против, тогда остаются кнопочки и такой компонент тоже есть, дбнафигатор нажывается, вот это точно нафиг, лучше по старинке кнопочками по гриду.
← →
Ega23 © (2008-06-19 14:25) [18]
> См AfterScroll у ДатаСета
>
При чём здесь AfterScroll?
← →
Sergey13 © (2008-06-19 14:26) [19]> [17] Anatoly Podgoretsky © (19.06.08 14:16)
Я не про ситуацию у автора, я про конкретный пост ганза, в котором он предлагает написать обработчик датасета и обращается в этом обработчике к этому самому датасету через грид.
← →
MsGuns © (2008-06-19 14:29) [20]Блин, ну нетути там разницы. Атстань пративный ;)
← →
Anatoly Podgoretsky © (2008-06-19 16:44) [21]Хоть перемещиение по набору/хоть перемещение по гриду оба вызовуют возникновение события before/AfterScroll, в отличии от OnDataChange там не так одназначно.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.07.20;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.047 c