Welche URL muss man denn nehmen?
Hello Sergey,
es geht um nested table. Ich möchte gern die Ebene der Tabellen wissen.
Ich habe 1 Tabelle (A) mit 4 Zeilen und 3 Spalten.
In dieser Tabelle (A) habe ich in einer Zelle (3;2) eine weitere Tabelle (B) mit 5 Zeilen und 2 Spalten.
Nun möchte ich folgende Rückmeldungen, wenn ich in eine Zelle (mit der lk. Maustaste) klicke:
-a-: Ich klicke in Tabelle A in cells(2,2). Rückmeldung: enthält keine weitere Tabelle
-b-: Ich klicke in Tabelle A in cells(2,1) unterhalb der Tabelle B. Rückmeldung: enthält EINE Tabelle
-c-: Ich klicke in Tabelle B in eine Zelle. Rückmeldung: Tabelle B liegt in Cells(2,1) der Tabelle A
Mein Ergebnis: Immer 'Caret ist in einer Zelle der Tabelle ... !'
procedure TForm1.sbTesten1Click(Sender: TObject);
var ebene: integer;
begin
if (memo.CanChange) and
(memo.GetCurrentItemEx(TRVTableItemInfo, rve, TCustomRVItemInfo(rveTable))) then begin
Ebene:= GetNestingLevel(rve);
If rve.TopLevelEditor=rve.InplaceEditor then
ShowMessage('Caret ist in einer Zelle der Tabelle ... ! Ebene: '+intToString(ebene));
end;
function TForm1.GetNestingLevel(rve: TCustomRichViewEdit): Integer;
begin
Result := 0;
while rve.InplaceEditor<>nil do begin
inc(Result);
rve := TCustomRichViewEdit(rve.InplaceEditor);
end;
end
