Показать сообщение отдельно
  #2  
Старый 08.08.2011, 15:02
Аватар для Viajero
Viajero Viajero вне форума
Активный
 
Регистрация: 14.06.2011
Адрес: РБ
Сообщения: 214
Версия Delphi: Delphi 7 FB 2.5
Репутация: 5849
По умолчанию

Сложный вопрос, т к стандартный dbgrid немножко недоделанный (в Delphi 7, с более новыми не работал) - в соответствующих событиях oncellclick и onkeydown нельзя узнать номер колонки и строки. Это есть в сторонних компонентах. Я напрмер использовал Ehlib, (я прикручивал внешний список, но там есть даже и внутренний)
Есть ещё способы вытащить эти свойства сделав свой класс.

Код:
{Код улучшенного TDBGrid, имеющего свойства Col,Row и Canvas и метод CellRect. Это чрезвычайно
полезно в случае, если вы, к примеру, хотитеполучить выпадающий список на месте редактируемой
пользователем ячейки.}

unit VUBComps;

interface

uses

SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
Forms, Dialogs, Grids, DBGrids, DB, Menus;

type
TDBGridVUB = class(TDBGrid)

private
   { Private declarations }

protected
   { Protected declarations }

public
   property Canvas;
   function CellRect(ACol, ARow: Longint): TRect;
   property Col;
   property Row;

   procedure Register;

implementation

procedure Register;

begin
  RegisterComponents('VUBudget', [TDBGridVUB]);
end;

function TDBGridVUB.CellRect(ACol, ARow: Longint): TRect;
begin
  Result := inherited CellRect(ACol, ARow);
end;

end.
 
 ©Drkb::03050     Взято с http://delphiworld.narod.ru
__________________
- Товарищ прапорщик!!! Остановите поезд!!! - Поезд СТОЙ! РАЗ! ДВА!
Ответить с цитированием