TRVTableCellData.GetRVData

<< Нажмите, чтобы показать Содержание >>

TRVTableCellData.GetRVData

Возвращает объект, содержащий данные ячейки (элементы документа).

function GetRVData: TCustomRVData;

Сама ячейка является объектом, содержащим данные. Однако когда ячейка находится в режиме редактирования, все её данные перемещаются во встроенный редактор, а сама ячейка остаётся пустой.

Этот метод возвращает:

саму ячейку, если она не находится в режиме редактирования;

свойство RVData редактора этой ячейки – в противном случае.

Поэтому при прямой работе с содержимым ячейки можно использовать этот метод, не учитывая её текущее состояние редактирования.

Пример (получение текста из таблицы):

function GetTableText(table: TRVTableItemInfo): String;

var 

  i, r, c: Integer;

  RVData: TCustomRVData;

begin

  Result := '';

  for r := 0 to table.RowCount-1 do

  begin

    for c := 0 to table.ColCount-1 do

      if table.Cells[r,c]<>nil then

      begin

        RVData := table.Cells[r,c].GetRVData;

        for i := 0 to RVData.ItemCount-1 do

        begin

          if (i>0and RVData.IsFromNewLine(i) then

            Result := Result + #13#10;

          if RVData.GetItemStyle(i)=rvsTab then

            Result := Result + #9

           else if RVData.GetItemStyle(i)>=0 then

            Result := Result + RVData.GetItemText(i);

        end;

        Result := Result + table.TextColSeparator;

      end;

    Result := Result + table.TextRowSeparator;

  end;

end;

См. также методы:

GetSourceRVData.