قفل أو فتح الشكل

حماية جميع الأشكال في ورقة عمل محددة

لحماية جميع الأشكال في ورقة عمل محددة، استخدم طريقة Worksheet.protect(int type). كما هو موضح في الشفرة البرمجية عينة التالية.

String text = "This is a test";
Workbook workbook = new Workbook();
Worksheet worksheet = workbook.getWorksheets().get(0);
Shape shape = worksheet.getShapes().addTextBox(1, 0, 1, 0, 30, 100);
shape.setText(text);
shape = worksheet.getShapes().addRectangle(5, 0, 1, 0, 30, 100);
shape.setText(text);
shape = worksheet.getShapes().addButton(9, 0, 1, 0, 30, 100);
shape.setText(text);
shape = worksheet.getShapes().addOval(13, 0, 1, 0, 50, 100);
shape.setText(text);
//Protect all shapes in a specified worksheet
shape.getWorksheet().protect(ProtectionType.OBJECTS);//Protects the entire worksheet.
//or shape.Worksheet.Protect(ProtectionType.All);//Protects all shapes in the specified worksheet.
//or worksheet.Protect(ProtectionType.Objects);//Protects the entire worksheet.
//or worksheet.Protect(ProtectionType.All);//Protects all shapes in the specified worksheet.
workbook.save("Locked.xlsx", SaveFormat.XLSX);

فتح الأشكال المحددة في ورقة عمل محمية

لفتح شكل محدد في ورقة عمل محمية، استخدم shape.IsLocked و shape.setLocked. كما هو موضح في الشفرة البرمجية عينة التالية.

ملاحظة: shape.IsLocked و shape.setLocked ذات معنى فقط عندما تكون الورقة محمية.

Workbook workbook = new Workbook("Locked.xlsx");
//Get protected worksheet
Worksheet worksheet = workbook.getWorksheets().get(0);
//Get the specified shape to be unlocked
Shape shape = worksheet.getShapes().get("TextBox 1");
//Unlock the specified shape
if (!worksheet.getProtection().getAllowEditingObject() && shape.isLocked())
{
shape.setLocked(false);
}
workbook.save("UnLocked.xlsx", SaveFormat.XLSX);