![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Вопрос по DBGrid [D7, XP]
b@v © (2009-01-15 08:05:00)Как узнать программно в ячейке какого столбца я клякнул. Нужно клякнуть в нужной ячейке и при этом отработало нужное событие
alshtam (2009-01-15 09:12:00) [21]тогда делай как в 4,потом делай проверку что row=n где n номер нужного столбца бери значение из этого поля и пошли смотреть фото
b@v (2009-01-15 09:08:00) [22]
> ткнул в грид выбралась строка. у dataset спрашиваеш значение
> конкретного столбца() по названию.
> i:integer;
> i:=DataSeе1.FieldByName('A').Asinteger
> возьмет значение из поля 'A' выделеной записи
Это я могу клякнуть в любом месте и он даст мне нужное значение, это понятно, а мне надо чтобы именно кляк срабатывал над нужным столбиком, а не над всей записью !!! Ну, представь, есть колонка, там запись, ее значение "ФОТО", что то типа ссылки, клякнули на "ФОТО" и пошли смотреть фото
MsGuns (2009-01-15 09:06:00) [23]>alshtam (15.01.09 08:54)
Зачем чесать левое ухо правой пяткой ?
alshtam (2009-01-15 09:02:00) [24]ткнул в грид выбралась строка. у dataset спрашиваеш значение конкретного столбца() по названию.
i:integer;
i:=DataSeе1.FieldByName('A').Asinteger
возьмет значение из поля 'A' выделеной записи
b@v (2009-01-15 08:56:00) [25]
> alshtam
А чем отличается колонка и столбец ?
alshtam (2009-01-15 08:54:00) [26]чтоб значение из DBGrid забрать не нужно узнавать куда кликнул. цепляеш dataset через него забераеш выбранную запись
b@v (2009-01-15 08:48:00) [27]
> alshtam
че то запутался, на примере не подскажешь ? Не разу так не делал, понять не могу !!!! Заранее спасибо
alshtam (2009-01-15 08:44:00) [28]ну вот procedure TFrame1.DBGrid1CellClick(Column: TColumn); обрабатывай узнавай куда кликнул и делой что хош дальше
alshtam (2009-01-15 08:43:00) [29]нет просто в предках TDBGrid прописаны col и row но они в protected объявлением TFDBGrid = class (TDBGrid); ты их вытаскиваеш и можеш пользоваться
b@v (2009-01-15 08:41:00) [30]Мне надо например, клякнул в ячейке в любой (даже не в любой, а именно в одном столбике, в любой ячейке) и значение этой ячейки положить в переменную.
b@v (2009-01-15 08:40:00) [31]
> alshtam
Это, что компонент какой то ?
alshtam (2009-01-15 08:36:00) [32]пардон
объявляеш
TFDBGrid = class (TDBGrid);
теперь
колонка selcol:=Tfdbgrid(DBGrid1).Col;
столбец selrow:=Tfdbgrid(DBGrid1).Row;
координаты r:= Tfdbgrid(DBGrid1).CellRect(selcol,selrow);
где r:Trect;
alshtam (2009-01-15 08:35:00) [33]объявляеш
TFDBGrid = class (TDBGrid);
теперь
колонка selcol:=Tfdbgrid(GoodsAndCategoriesDBGrid1).Col;
столбец selrow:=Tfdbgrid(GoodsAndCategoriesDBGrid1).Row;
координаты r:= Tfdbgrid(DBGrid1).CellRect(selcol,selrow);
где r:Trect;
b@v (2009-01-15 08:25:00) [34]Если так то он постоянно выдает одно и тоже число, т.е. количество колонок
031178 (2009-01-15 08:07:00) [35]procedure TFrame1.DBGrid1CellClick(Column: TColumn);
begin
if Column.ID = 5 then ...................................