![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ВЫзов метода DBGrid1CellClick из любого места программы [D6, MSSQL]
Karlson © (2004-03-27 15:46:00)Добрый день! При клике по ячейке DbGrida вызывается свойство DBGrid1CellClick(Column: TColumn), в некотором месте программы мне нужно обратиться к этому методу, но я не могу передать ему параметр Column - как он передается и что он подразумевает? Заранее спасибо.
Karlson (2004-03-27 17:41:00) [1]Все получилось, спасибо! Тема исчерпана :)
Oleon (2004-03-27 17:31:00) [2]Ну я хотел сказать напиши :
DBGRid1.Columns[0]
если у тебя есть колонка то все сработает...
Karlson (2004-03-27 17:27:00) [3]Ну, во-первых, оно не воспринимает TDBGRid1.Columns[0]- этож класс, как я понимаю, только как отдельный объект идет, то есть без указания Т. И выдает стандартное ругательство project raised exseption class EAccess Violation, ну и дальше знакомый текст про ошибку в таком-то месте памяти и т.д.
Oleon (2004-03-27 17:21:00) [4]А чего пишет?
Karlson (2004-03-27 16:47:00) [5]< Ну передай
< DBGrid1CellClick(TDBGRid1.Columns[0])
Не проходит такой фокус...
Oleon (2004-03-27 16:40:00) [6]Ну передай
DBGrid1CellClick(TDBGRid1.Columns[0])
Karlson (2004-03-27 16:35:00) [7]Я понимаю, что можно из DataSet вынуть инфу, но если уже есть метод (DBGrid1CellClick), который ее выгребает, зачем использовать еще что-то? Просто не могу правильно передать параметр Column методу DBGrid1CellClick.
KSergey (2004-03-27 16:27:00) [8]Информация в DBGrid не живет сама по себе.
Вся она идет из соответствующего DataSet.
А потому достаточно проосто обратитьься к полю DataSet, котороре отображается в той самой первом столбце. Да хоть и так (примерно, дельфи под рукой нет, за корректнности синтаксиса не ручаюсь)
DBGrid1.Columns[0].Field.Value...
Да либо просто к прямо к полю DataSet (я не помню на память нюансы св-ства DBGrid1.Columns и есть ли оно вообще ;)
Karlson (2004-03-27 16:15:00) [9]Как только открывается форма - Гриду передается фокус, поэтому самая первая ячейка становится активной. В зависимости от того, какая ячейка выделена - информация из нее передается едиту. На клик описываю процедуру, а вот на открытие формы тоже нужно: взять инфу из ячейки и передать ее едиту.
Oleon (2004-03-27 16:06:00) [10]Если бы ты описал, что ты хочешь сделать, то может получится найти какой-нибудь другой вариант решения задачи.
Почему это самая первая ячейка всегда?
Karlson (2004-03-27 16:03:00) [11]Мне нужна информация выделенной ячейки после открытия формы, то есть это будет самая первая ячейка в Гриде (столбец только 1)
Oleon (2004-03-27 15:59:00) [12]Из какого места нужно вызвать и используется ли этот параметр тобою при обработке этого события?
Если нет, то попробуй вот так :
DBGrid1CellClick(nil);