قفل أو فتح الشكل
أحيانًا، تحتاج إلى حماية جميع الأشكال في بعض الأوراق لمنع تدميرها من قبل مواقف غير مرغوب فيها. في هذه الحالة، تحتاج إلى قفل جميع الأشكال في الورقة المحددة.
أحيانًا، تحتاج إلى تعديل بعض الأشكال في بعض الأوراق المحمية، في هذه الحالة، تحتاج إلى فتح هذه الأشكال.
سيقدم هذا المقال كيفية قفل وفتح الأشكال المحددة بالتفصيل.
حماية جميع الأشكال في ورقة عمل محددة
لحماية جميع الأشكال في ورقة عمل محددة، استخدم طريقة 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); |