Hogyan kell olvasni az adatokat a cella dbgrid

Honnan tudom, hogy az értéke egy cellát egy DBGrid, amelyen mi kattintott a jobb egérgombbal, és hogyan tudja a nevét az oszlop?

Valószínűleg kell még tudni a nevét, az oszlop

1. DBGrid nincs adat.
2. SelectedField + F1

megismerni csak a neve az első mezőben, és azt kell valamit, amit klyaknul

Van-e értéke DBGrid.Options dgRowSelect?

Amennyire én emlékszem, amikor jobb gombbal bárhol dbgrid, az aktív cella nem változtat álláspontján.


> Hogyan tudja a cella értékét a DBGrid

Tovább Ivanushka után csoda küldeni.


> Amennyire én emlékszem, amikor jobb gombbal bárhol
> Dbgrid, az aktív cella nem változtat álláspontján.

Változások. De ez nem hívják onclick.

Szimpatikusnak - DBGrid nem okoz a felhasználónak a MouseDown felvezető, de elég MouseUp (ez a helyzet, ha nincs RowSelect a lehetőségeket):

eljárás TfMain.DBGrid1MouseUp (Sender: TObject; gomb: TMouseButton;
# XA0; Shift: TShiftState; X, Y: Egész szám);
kezdődik
# XA0, ha gomb = mbRight majd
# XA0; # XA0; ha hozzárendelt (DBGrid1.SelectedField), majd
# XA0; # XA0; # XA0; ShowMessage (DBGrid1.SelectedField.AsString);
végén;


> ShowMessage (DBGrid1.SelectedField.AsString);

vagy
ShowMessage (DBGrid1.SelectedField.FieldName);

Azonban ez nem túl nehéz RowSelect opciók

típus
# XA0; TDBGridCrack = osztály (TCustomDBGrid)
# XA0; end;

eljárás TfMain.DBGrid1MouseUp (Sender: TObject; gomb: TMouseButton;
# XA0; Shift: TShiftState; X, Y: Egész szám);
var
# XA0; Cell: TGridCoord;
# XA0 Oszlop: TColumn;
kezdődik
# XA0, ha gomb = mbRight majd
# XA0; # XA0, ha nem (dgRowSelect a DBGrid1.Options), majd
# XA0; # XA0; kezdődik
# XA0; # XA0; # XA0; ha hozzárendelt (DBGrid1.SelectedField), majd
# XA0; # XA0; # XA0; # XA0; ShowMessage (DBGrid1.SelectedField.AsString);
# XA0; # XA0; end
# XA0; # XA0; máshol
# XA0; # XA0; kezdődik
# XA0; # XA0; # XA0; Cell: = DBGrid1.MouseCoord (X, Y);
# XA0; # XA0; # XA0; ha Cell.X> = TDBGridCrack (DBGrid1) .LeftCol majd
# XA0; # XA0; # XA0; kezdődik
# XA0; # XA0; # XA0; # XA0; oszlop: = DBGrid1.Columns [Cell.X - TDBGridCrack (DBGrid1) .LeftCol];
# XA0; # XA0; # XA0; # XA0; ShowMessage (Column.Field.AsString);
# XA0; # XA0; # XA0; end;
# XA0; # XA0; end;
végén;

> 1. A DBGrid nincs adat.

Kevés adat van.
Lásd még: DataLink tulajdon.

Valahogy úgy vélik, hogy fogják hívni esetén egy felugró menü van jelen. És miután slip-off. És valóban, ez az esemény, nem egy rács.

Memória: 0,75 MB
Idő: 0.041 c