Add ActiveX Controls using Aspose.Cells for JavaScript via C++
Contents
[
Hide
]
You can add ActiveX controls with Aspose.Cells using the ShapeCollection.addActiveXControl(ControlType, number, number, number, number, number, number) method. This method takes a parameter ControlType which tells what type of ActiveX control needs to be added inside a worksheet. It has the following values.
- ControlType.CheckBox
- ControlType.ComboBox
- ControlType.CommandButton
- ControlType.Image
- ControlType.Label
- ControlType.ListBox
- ControlType.RadioButton
- ControlType.ScrollBar
- ControlType.SpinButton
- ControlType.TextBox
- ControlType.ToggleButton
- ControlType.Unknown
Once you have added the ActiveX control inside the shape collection, you can then access the ActiveX control object via Shape.activeXControl property and then set its various properties.
The following sample code adds Toggle Button ActiveX Control using Aspose.Cells.
<!DOCTYPE html>
<html>
<head>
<title>Aspose.Cells Example - Add ActiveX Control</title>
</head>
<body>
<h1>Add ActiveX Control Example</h1>
<input type="file" id="fileInput" accept=".xls,.xlsx,.csv" />
<button id="runExample">Run Example</button>
<a id="downloadLink" style="display: none;">Download Result</a>
<div id="result"></div>
</body>
<script src="aspose.cells.js.min.js"></script>
<script type="text/javascript">
const { Workbook, SaveFormat, ControlType, Utils } = AsposeCells;
AsposeCells.onReady({
license: "/lic/aspose.cells.enc",
fontPath: "/fonts/",
fontList: [
"arial.ttf",
"NotoSansSC-Regular.ttf"
]
}).then(() => {
console.log("Aspose.Cells initialized");
document.getElementById('runExample').addEventListener('click', async () => {
// Create workbook object (empty workbook)
const wb = new Workbook();
// Access first worksheet
const sheet = wb.worksheets.get(0);
// Add Toggle Button ActiveX Control inside the Shape Collection
const s = sheet.shapes.addActiveXControl(ControlType.ToggleButton, 4, 0, 4, 0, 100, 30);
// Access the ActiveX control object and set its linked cell property
const c = s.activeXControl;
c.linkedCell = "A1";
// Save the workbook in xlsx format and provide download link
const outputData = wb.save(SaveFormat.Xlsx);
const blob = new Blob([outputData]);
const downloadLink = document.getElementById('downloadLink');
downloadLink.href = URL.createObjectURL(blob);
downloadLink.download = 'AddActiveXControls_out.xlsx';
downloadLink.style.display = 'block';
downloadLink.textContent = 'Download Excel File';
document.getElementById('result').innerHTML = '<p style="color: green;">ActiveX control added successfully! Click the download link to get the modified file.</p>';
});
});
</script>
</html>