Обновить элемент ActiveX ComboBox с помощью C++
Возможные сценарии использования
Вы можете читать или записывать значения контроллера ActiveX ComboBox с помощью Aspose.Cells. Пожалуйста, получите доступ к ActiveX-контролю через свойство Shape.ActiveXControl и проверьте его тип с помощью свойства ActiveXControl.GetType(). Оно должно возвращать значение ControlType.ComboBox, затем приведите его к объекту ComboBoxActiveXControl, чтобы читать или изменять его свойства.
Пожалуйста, загрузите образец файла Excel, используемый в следующем примере кода.
Обновление элемента управления ComboBox ActiveX
На следующем скриншоте показан эффект примера кода на образец файла Excel. Как видно, значение элемента управления ActiveX ComboBox было обновлено на “This is combo box control”.
![]() |
---|
Образец кода
Следующий образец кода обновляет значение элемента управления ActiveX ComboBox, находящегося внутри образца файла Excel.
#include <iostream>
#include "Aspose.Cells.h"
using namespace Aspose::Cells;
using namespace Aspose::Cells::Drawing;
using namespace Aspose::Cells::Drawing::ActiveXControls;
int main()
{
Aspose::Cells::Startup();
U16String srcDir(u"..\\Data\\01_SourceDirectory\\");
U16String outDir(u"..\\Data\\02_OutputDirectory\\");
Workbook wb(srcDir + u"SourceFile.xlsx");
Shape shape = wb.GetWorksheets().Get(0).GetShapes().Get(0);
ActiveXControl c = shape.GetActiveXControl();
if (c.GetType() == ControlType::ComboBox)
{
ComboBoxActiveXControl comboBoxActiveX = static_cast<ComboBoxActiveXControl>(c);
comboBoxActiveX.SetValue(u"This is combo box control with updated value.");
}
wb.Save(outDir + u"OutputFile_out.xlsx");
std::cout << "Workbook saved successfully with updated ComboBox value!" << std::endl;
Aspose::Cells::Cleanup();
}