使艺术字无法获得焦点
Make a WordArt not recieve focus
在 VSTO/VBA 中是否有 API 用于 Excel 或 Aspose Cells 用于 Java 以便我添加到 Excel 的艺术字工作表从未收到键盘或鼠标焦点?
例如在下图中,当我单击艺术字时,它会获得焦点。当它获得焦点并且我按下键盘上的 Tab 键时,焦点转到下一个艺术字,即它上面的那个。
我希望这些艺术字对象永远不会接收键盘或鼠标焦点。有办法吗?
这可以通过保护您的工作表来实现。您可以从互联网上学习如何保护工作表及其内容或对象。 Aspose.Cells支持工作表保护
请参阅以下使用 Aspose.Cells API 的示例代码。它解释了如何保护您的工作表内容或对象。请根据需要修改代码。
Java和C#代码都给出了参考
Java
//Load your workbook
Workbook wb = new Workbook("sample.xlsx");
//Access first worksheet
Worksheet ws = wb.getWorksheets().get(0);
//Unlock all cells of your worksheet
Style st = ws.getCells().get("A1").getStyle();
st.setLocked(false);
StyleFlag flg = new StyleFlag();
flg.setLocked(true);
ws.getCells().applyStyle(st, flg);
//Specify protection types
Protection p = ws.getProtection();
p.setAllowEditingContent(false);
p.setAllowEditingObject(false);
p.setAllowEditingScenario(false);
//Protect the worksheet
ws.protect(ProtectionType.ALL);
//Save the workbook
wb.save("output.xlsx");
C#
//Load your workbook
Workbook wb = new Workbook("sample.xlsx");
//Access first worksheet
Worksheet ws = wb.Worksheets[0];
//Unlock all cells of your worksheet
Style st = ws.Cells["A1"].GetStyle();
st.IsLocked = false;
StyleFlag flg = new StyleFlag();
flg.Locked = true;
ws.Cells.ApplyStyle(st, flg);
//Specify protection types
Protection p = ws.Protection;
p.AllowEditingContent = false;
p.AllowEditingObject = false;
p.AllowEditingScenario = false;
//Protect the worksheet
ws.Protect(ProtectionType.All);
//Save the workbook
wb.Save("output.xlsx");
注意:我在 Aspose 担任开发人员布道师
嗯,在Aspose.Cells API中,您可以尝试使用艺术字形状的某些锁定属性来完成您的任务,请参阅示例代码供您参考:
例如
示例代码:
Workbook workbook = new Workbook();
Worksheet worksheet = workbook.getWorksheets().get(0);
Shape wordart = worksheet.getShapes().addTextEffect(MsoPresetTextEffect.TEXT_EFFECT_1, "CONFIDENTIAL", "Open Sans", 50, false, true, 18, 8, 1, 1, 130, 800);
//Lock Shape Aspects.
wordart.setLocked(true);
wordart.setLockedProperty(ShapeLockType.SELECTION, true);
wordart.setLockedProperty(ShapeLockType.SHAPE_TYPE, true);
wordart.setLockedProperty(ShapeLockType.MOVE, true);
wordart.setLockedProperty(ShapeLockType.RESIZE, true);
wordart.setLockedProperty(ShapeLockType.TEXT, true);
FillFormat wordArtFormat = wordart.getFill();
wordArtFormat.setFillType(FillType.SOLID);
wordArtFormat.getSolidFill().setColor(Color.getLightGray());
wordArtFormat.setTransparency(0.55);
wordart.setHasLine(false);
workbook.save("out1.xlsx");
希望,这有点帮助。
我在 Aspose 担任支持 developer/Evangelist。
在 VSTO/VBA 中是否有 API 用于 Excel 或 Aspose Cells 用于 Java 以便我添加到 Excel 的艺术字工作表从未收到键盘或鼠标焦点?
例如在下图中,当我单击艺术字时,它会获得焦点。当它获得焦点并且我按下键盘上的 Tab 键时,焦点转到下一个艺术字,即它上面的那个。
我希望这些艺术字对象永远不会接收键盘或鼠标焦点。有办法吗?
这可以通过保护您的工作表来实现。您可以从互联网上学习如何保护工作表及其内容或对象。 Aspose.Cells支持工作表保护
请参阅以下使用 Aspose.Cells API 的示例代码。它解释了如何保护您的工作表内容或对象。请根据需要修改代码。
Java和C#代码都给出了参考
Java
//Load your workbook
Workbook wb = new Workbook("sample.xlsx");
//Access first worksheet
Worksheet ws = wb.getWorksheets().get(0);
//Unlock all cells of your worksheet
Style st = ws.getCells().get("A1").getStyle();
st.setLocked(false);
StyleFlag flg = new StyleFlag();
flg.setLocked(true);
ws.getCells().applyStyle(st, flg);
//Specify protection types
Protection p = ws.getProtection();
p.setAllowEditingContent(false);
p.setAllowEditingObject(false);
p.setAllowEditingScenario(false);
//Protect the worksheet
ws.protect(ProtectionType.ALL);
//Save the workbook
wb.save("output.xlsx");
C#
//Load your workbook
Workbook wb = new Workbook("sample.xlsx");
//Access first worksheet
Worksheet ws = wb.Worksheets[0];
//Unlock all cells of your worksheet
Style st = ws.Cells["A1"].GetStyle();
st.IsLocked = false;
StyleFlag flg = new StyleFlag();
flg.Locked = true;
ws.Cells.ApplyStyle(st, flg);
//Specify protection types
Protection p = ws.Protection;
p.AllowEditingContent = false;
p.AllowEditingObject = false;
p.AllowEditingScenario = false;
//Protect the worksheet
ws.Protect(ProtectionType.All);
//Save the workbook
wb.Save("output.xlsx");
注意:我在 Aspose 担任开发人员布道师
嗯,在Aspose.Cells API中,您可以尝试使用艺术字形状的某些锁定属性来完成您的任务,请参阅示例代码供您参考: 例如 示例代码:
Workbook workbook = new Workbook();
Worksheet worksheet = workbook.getWorksheets().get(0);
Shape wordart = worksheet.getShapes().addTextEffect(MsoPresetTextEffect.TEXT_EFFECT_1, "CONFIDENTIAL", "Open Sans", 50, false, true, 18, 8, 1, 1, 130, 800);
//Lock Shape Aspects.
wordart.setLocked(true);
wordart.setLockedProperty(ShapeLockType.SELECTION, true);
wordart.setLockedProperty(ShapeLockType.SHAPE_TYPE, true);
wordart.setLockedProperty(ShapeLockType.MOVE, true);
wordart.setLockedProperty(ShapeLockType.RESIZE, true);
wordart.setLockedProperty(ShapeLockType.TEXT, true);
FillFormat wordArtFormat = wordart.getFill();
wordArtFormat.setFillType(FillType.SOLID);
wordArtFormat.getSolidFill().setColor(Color.getLightGray());
wordArtFormat.setTransparency(0.55);
wordart.setHasLine(false);
workbook.save("out1.xlsx");
希望,这有点帮助。
我在 Aspose 担任支持 developer/Evangelist。