Сложный вопрос, т к стандартный dbgrid немножко недоделанный (в Delphi 7, с более новыми не работал) - в соответствующих событиях oncellclick и onkeydown нельзя узнать номер колонки и строки. Это есть в сторонних компонентах. Я напрмер использовал Ehlib, (я прикручивал внешний список, но там есть даже и внутренний)
Есть ещё способы вытащить эти свойства сделав свой класс.
Код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | unit VUBComps;
interface
uses
SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
Forms, Dialogs, Grids, DBGrids, DB, Menus;
type
TDBGridVUB = class (TDBGrid)
private
protected
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:
|