Cómo agregar filas a la tabla en DOCX usando C++

En este tema, aprenderemos cómo agregar filas a la tabla en DOCX usando C++. Las tablas tienen una amplia utilidad dentro del documento de Word y puede insertar fácilmente filas dentro de la tabla del documento de Word utilizando una interfaz API de C ++ muy simple.

Pasos para insertar filas dentro de la tabla en DOCX usando C++

  1. Instale Aspose.Words.Cpp con el administrador de paquetes NuGet
  2. Agregue una referencia a los espacios de nombres Aspose::Words y Aspose::Words::Tables
  3. Crear una instancia del objeto Document Class para cargar el documento para administrar las filas de la tabla
  4. Acceda a la tabla en la primera sección usando el objeto Table Class
  5. Agregue filas en la tabla usando múltiples opciones
  6. Guarde el documento de Word con la fila de la tabla en formato DOCX usando el método Guardar

En el siguiente ejemplo, hemos mostrado cómo puede insertar filas desde cero dentro de la tabla de un documento de Word. También describe cómo puede clonar filas existentes dentro de la tabla y agregar nuevas usando filas clonadas dentro de la tabla DOCX.

Código para insertar filas dentro de la tabla en DOCX usando C++

#pragma once
#include <cstdint>
#include <iostream>
#include <Aspose.Words.Cpp/Document.h>
#include <Aspose.Words.Cpp/Section.h>
#include <Aspose.Words.Cpp/Body.h>
#include <Aspose.Words.Cpp/Paragraph.h>
#include <Aspose.Words.Cpp/DocumentBase.h>
#include <Aspose.Words.Cpp/DocumentBuilder.h>
#include <Aspose.Words.Cpp/Drawing/Shape.h>
#include <Aspose.Words.Cpp/HeaderFooterType.h>
#include <Aspose.Words.Cpp/Saving/SaveOutputParameters.h>
#include <system/array.h>
#include <system/exceptions.h>
#include <Aspose.Words.Cpp/Tables/Cell.h>
#include <Aspose.Words.Cpp/Tables/CellCollection.h>
#include <Aspose.Words.Cpp/Tables/CellFormat.h>
#include <Aspose.Words.Cpp/Tables/PreferredWidth.h>
#include <Aspose.Words.Cpp/Tables/Row.h>
#include <Aspose.Words.Cpp/Tables/RowCollection.h>
#include <Aspose.Words.Cpp/Tables/Table.h>
#include <Aspose.Words.Cpp/Tables/TableCollection.h>
//#include <Aspose.Words.Cpp/Tables/Tables.h>s
#include <Aspose.Words.Cpp/Run.h>
#include <Aspose.Words.Cpp/RunCollection.h>
#include <system/enumerator_adapter.h>
#include <Aspose.Words.Cpp/License.h>
#include <system/io/path.h>
using System::ArrayPtr;
using System::MakeArray;
using System::MakeObject;
using System::SharedPtr;
using System::String;
using namespace Aspose::Words;
using namespace Aspose::Words::Tables;
class AddTableInWordDocumentUsingCpp
{
public:
void AddTableRows()
{
// Load and Set API License
System::String LicFilePath = u"Aspose.Total.CPP.lic";
SharedPtr<License> WordsCPPLicenseForTable = System::MakeObject<License>();
// Setting product license
WordsCPPLicenseForTable->SetLicense(LicFilePath);
// Instantiate Document class to load document for managing table
SharedPtr<Document> AddTableToDOCX = MakeObject<Document>(u"WordDocument.docx");
// Access the Table by index in first section
SharedPtr <Table> tableToAddRowsTo = AddTableToDOCX->get_FirstSection()->get_Body()
->get_Tables()->idx_get(0);
// Instantiate a new Row Object
SharedPtr <Row> row = MakeObject<Row>(AddTableToDOCX);
// Add 3 Cells for added Row by accessing it cells collection
for (int iRowIndex = 0; iRowIndex < 3; iRowIndex++)
{
SharedPtr < Cell> cell = MakeObject <Cell>(AddTableToDOCX);
cell->AppendChild(MakeObject <Paragraph>(AddTableToDOCX));
cell->get_FirstParagraph()->get_Runs()->Add(MakeObject <Run>(AddTableToDOCX, u"Text in Cell " + iRowIndex));
row->get_Cells()->Add(cell);
}
// Insert the Row after first row in table
tableToAddRowsTo->get_Rows()->Insert(1, row);
// Now, clone the existing Row in Table
SharedPtr <Row> cloneOfRow = System::DynamicCast<Row>(tableToAddRowsTo->get_FirstRow()->Clone(true));
// Clear all content from all Cells of the row
for(SharedPtr<Node> node : cloneOfRow->get_Cells())
{
SharedPtr<Cell> cell = System::DynamicCast<Cell>(node);
cell->RemoveAllChildren();
cell->EnsureMinimum();
}
// Now see, how to add multiple empty rows at the end of table
for (int iRowCounter = 0; iRowCounter < 10; iRowCounter++)
{
SharedPtr<Row> emptyRow = System::DynamicCast<Row>(cloneOfRow->Clone(true));
tableToAddRowsTo->get_Rows()->Add(emptyRow);
}
// Save the word document with table to DOCX format
AddTableToDOCX->Save(u"InsertTableinDocx.docx");
}
};

En el ejemplo anterior, examinamos Cómo insertar encabezado y pie de página en DOCX usando C++. Mientras que en este tema, hemos aprendido sobre agregar filas a la tabla de un documento de Word usando C++.

 Español