Показать и скрыть строки, столбцы и полосы прокрутки с помощью C++
Показ и скрытие строк и столбцов
Aspose.Cells предоставляет класс Workbook, представляющий файл Microsoft Excel. Класс Workbook содержит коллекцию Worksheets, позволяющую разработчикам получать доступ к каждому листу Excel. Лист представлен классом Worksheet. Класс Worksheet обеспечивает коллекцию Cells, которая отображает все ячейки листа. Коллекция Cells предоставляет несколько методов для управления строками или столбцами листа. Некоторые из них обсуждены ниже.
Показать строки и столбцы
Разработчики могут отображать любой скрытый ряд или столбец, вызвав методы UnhideRow и UnhideColumn коллекции Cells соответственно. Оба метода требуют два параметра:
- Индекс строки или столбца - индекс строки или столбца, который используется для отображения конкретной строки или столбца.
- Высота строки или ширина столбца - высота строки или ширина столбца, назначенные строке или столбцу после отображения.
#include <iostream>
#include "Aspose.Cells.h"
using namespace Aspose::Cells;
int main()
{
Aspose::Cells::Startup();
// Source directory path
U16String srcDir(u"..\\Data\\01_SourceDirectory\\");
// Output directory path
U16String outDir(u"..\\Data\\02_OutputDirectory\\");
// Path of input excel file
U16String inputFilePath = srcDir + u"book1.xls";
// Path of output excel file
U16String outputFilePath = outDir + u"output.xls";
// Create workbook
Workbook workbook(inputFilePath);
// Accessing the first worksheet in the Excel file
Worksheet worksheet = workbook.GetWorksheets().Get(0);
// Unhiding the 3rd row and setting its height to 13.5
worksheet.GetCells().UnhideRow(2, 13.5);
// Unhiding the 2nd column and setting its width to 8.5
worksheet.GetCells().UnhideColumn(1, 8.5);
// Save the modified Excel file
workbook.Save(outputFilePath);
std::cout << "Excel file modified and saved successfully!" << std::endl;
Aspose::Cells::Cleanup();
}
worksheet->GetCells()->UnhideColumn(5, -1)
.
Скрыть строки и столбцы
Разработчики могут скрывать строки или столбцы, вызвав методы HideRow и HideColumn коллекции Cells соответственно. Оба метода требуют индекс строки или столбца, чтобы скрыть конкретный элемент.
#include <iostream>
#include <memory>
#include "Aspose.Cells.h"
using namespace Aspose::Cells;
int main()
{
Aspose::Cells::Startup();
// Source directory path
U16String srcDir(u"..\\Data\\01_SourceDirectory\\");
// Output directory path
U16String outDir(u"..\\Data\\02_OutputDirectory\\");
// Path of input excel file
U16String inputFilePath = srcDir + u"book1.xls";
// Path of output excel file
U16String outputFilePath = outDir + u"output.out.xls";
// Create workbook
Workbook workbook(inputFilePath);
// Access the first worksheet in the Excel file
Worksheet worksheet = workbook.GetWorksheets().Get(0);
// Hide the 3rd row of the worksheet
worksheet.GetCells().HideRow(2);
// Hide the 2nd column of the worksheet
worksheet.GetCells().HideColumn(1);
// Save the modified Excel file
workbook.Save(outputFilePath);
std::cout << "Rows and columns hidden successfully!" << std::endl;
Aspose::Cells::Cleanup();
}
Скрыть несколько строк и столбцов
Разработчики могут скрывать несколько строк или столбцов одновременно, вызвав методы HideRows и HideColumns коллекции Cells соответственно. Оба метода требуют начальный индекс строки или столбца и количество скрываемых строк или столбцов в качестве параметров.
#include <iostream>
#include <memory>
#include "Aspose.Cells.h"
using namespace Aspose::Cells;
int main()
{
Aspose::Cells::Startup();
// Source directory path
U16String srcDir(u"..\\Data\\01_SourceDirectory\\");
// Output directory path
U16String outDir(u"..\\Data\\02_OutputDirectory\\");
// Path of input Excel file
U16String inputFilePath = srcDir + u"book1.xls";
// Create workbook
Workbook workbook(inputFilePath);
// Access the first worksheet in the Excel file
Worksheet worksheet = workbook.GetWorksheets().Get(0);
// Hide 3, 4, and 5 rows in the worksheet
worksheet.GetCells().HideRows(2, 3);
// Hide 2 and 3 columns in the worksheet
worksheet.GetCells().HideColumns(1, 2);
// Save the modified Excel file
workbook.Save(outDir + u"outputxls");
std::cout << "Rows and columns hidden successfully!" << std::endl;
Aspose::Cells::Cleanup();
}
Показывать и скрывать полосы прокрутки
Полосы прокрутки используются для навигации по содержимому любого файла. Обычно существует два типа полос прокрутки:
- Вертикальные полосы прокрутки
- Горизонтальные полосы прокрутки
Microsoft Excel также предоставляет горизонтальные и вертикальные полосы прокрутки, чтобы пользователи могли пролистывать содержимое листа Excel. Используя Aspose.Cells, разработчики могут контролировать видимость обоих типов полос прокрутки в файлах Excel.
Управление видимостью полос прокрутки
Aspose.Cells предоставляет класс Workbook, представляющий файл Excel. Класс Workbook предлагает широкий набор свойств и методов для управления файлом Excel. Для управления видимостью полос прокрутки используйте свойства Workbook, WorkbookSettings.IsVScrollBarVisible и WorkbookSettings.IsHScrollBarVisible класса Workbook. WorkbookSettings.IsVScrollBarVisible и WorkbookSettings.IsHScrollBarVisible — логические свойства, которые могут принимать только значения true или false.
Отображение полос прокрутки
Делайте полосы прокрутки видимыми, устанавливая свойства WorkbookSettings.IsVScrollBarVisible или WorkbookSettings.IsHScrollBarVisible класса Workbook в true.
Скрытие полос прокрутки
Скрыть полосы прокрутки, установив свойства WorkbookSettings.IsVScrollBarVisible или WorkbookSettings.IsHScrollBarVisible класса Workbook в false.
Пример кода
Ниже приведен полный код, который открывает файл Excel, book1.xls
, скрывает обе полосы прокрутки и сохраняет измененный файл как output.xls
.
#include <iostream>
#include <fstream>
#include "Aspose.Cells.h"
using namespace Aspose::Cells;
int main()
{
Aspose::Cells::Startup();
// Source directory path
U16String srcDir(u"..\\Data\\01_SourceDirectory\\");
// Output directory path
U16String outDir(u"..\\Data\\02_OutputDirectory\\");
// Path of input Excel file
U16String inputFilePath = srcDir + u"book1.xls";
// Path of output Excel file
U16String outputFilePath = outDir + u"output.xls";
// Create workbook from the input file
Workbook workbook(inputFilePath);
// Hide the vertical scroll bar of the Excel file
workbook.GetSettings().SetIsVScrollBarVisible(false);
// Hide the horizontal scroll bar of the Excel file
workbook.GetSettings().SetIsHScrollBarVisible(false);
// Save the modified Excel file
workbook.Save(outputFilePath);
std::cout << "Scroll bars hidden successfully and file saved!" << std::endl;
Aspose::Cells::Cleanup();
}