[]
        
(Showing Draft Content)

注释

GcExcel Java使您能够通过在单元格上写注释对工作表进行解释说明,以便指定有关工作表所包含数据的其他信息。

例如,假设您只想在工作表的单个单元格中输入数字信息。为了实现这一点,最好使用简短的注释(例如“请在此单元格中仅输入数字字符”)来为该单元格中表示的数据提供额外的上下文,而不是用大注释填充小单元格。

带注释的单元格将显示一个小的红色指示器(在单元格的一角),当鼠标指针放置在特定单元格上时,该指示器将出现。注释中的文本可以编辑、复制和格式化。此外,评论可以移动,调整大小或删除,可以隐藏或可见,其指标也可以根据您的喜好定制。

Comment

在表单的单元格中应用注释时,可以执行以下操作:

为单元格添加注释

在 GcExcel Java 中, 单元格注释实例由 IComment 接口表示。 可以使用 IRange 接口的 addComment 方法向单元格或单元格区域插入注释。 还可以使用 IComment 接口的 setText 方法设置注释的文本。

请参阅以下示例代码向单元格添加注释。

// Add new comments 
IComment commentC3 = worksheet.getRange("C3").addComment("Range C3's comment.");
IComment commentC4 = worksheet.getRange("C4").addComment("Range C4's comment.");
IComment commentC5 = worksheet.getRange("C5").addComment("Range C5's comment.");
        
// Change the text of a comment.
commentC3.setText("New Comment for Range C3.");

设置注释布局

可以使用 IComment接口的 getShape 方法配置添加到单个单元格或单元格区域的注释的布局。

请参阅以下示例代码以设置注释布局。

IComment commentC3 = worksheet.getRange("C3").addComment("Range C3's comment.");
// Configure comment layout
commentC3.getShape().getLine().getColor().setRGB(Color.GetGreen());
commentC3.getShape().getLine().setWeight(7);
commentC3.getShape().getLine().setStyle(LineStyle.ThickThin);
commentC3.getShape().getLine().setDashStyle(LineDashStyle.Solid);
commentC3.getShape().getFill().getColor().setRGB(Color.GetGray());
commentC3.getShape().setWidth(100);
commentC3.getShape().setHeight(200);
commentC3.getShape().getTextFrame().getTextRange().getFont().setBold(true);
commentC3.setVisible(true);

显示/隐藏注释

通过使用 IComment 接口的  setVisible 方法,可以选择隐藏或显示注释。

要显示/隐藏添加到单元格的注释,请参阅以下示例代码。

// Add comment.
IComment commentC3 = worksheet.getRange("C3").addComment("Range C3's comment.");
// Show comment
commentC3.setVisible(true);
// Hide comment
commentC3.setVisible(false);

作者注释

可以使用 IComment 接口的 getAuthor 方法来表示注释的作者。此外,还可以使用此方法更改现有注释的作者。

要设置单元格的注释作者,请参阅以下示例代码。

// Set comment author
workbook.setAuthor("joneshan");        
IWorksheet worksheet = workbook.getWorksheets().get(0);
worksheet.getRange("C3").addComment("Range C3's comment.");
// C3's comment author is "joneshan'
String authorC3 = worksheet.getRange("C3").getComment().getAuthor();
System.out.println(authorC3);

为注释设置富文本

可以使用控制文本样式的 ITextFrame 接口的方法为注释设置富文本。

要为注释设置富文本,请参阅以下示例代码。

// Add a new comment
IComment commentC3 = worksheet.getRange("C3").addComment("Range C3's comment.");

// Configure the paragraph style using Rich Text and Text Frame.
commentC3.getShape().getTextFrame().getTextRange().getParagraphs().get(0).getFont().setBold(true);
commentC3.getShape().getTextFrame().getTextRange().getParagraphs().get(0).getRuns().add("ccc", 0);
commentC3.getShape().getTextFrame().getTextRange().getParagraphs().get(0).getRuns().add("eee", 1);
commentC3.getShape().getTextFrame().getTextRange().getParagraphs().get(0).getRuns().add("ddd");
commentC3.getShape().getTextFrame().getTextRange().getParagraphs().get(0).getRuns().get(2).getFont()
        .setItalic(true);
commentC3.getShape().getTextFrame().getTextRange().getParagraphs().get(0).getRuns().get(2).getFont().getColor()
        .setRGB(Color.GetGreen());

删除注释

可以分别使用 IComment 接口和 IRange 接口的  delete 方法删除添加到单元格或单元格区域的注释。

要从单元格中删除注释,请参阅以下示例代码。

// Add comments
 worksheet.getRange("C3").addComment("Range C3's comment.");
 worksheet.getRange("D4").addComment("Range D4's comment.");
 worksheet.getRange("D5").addComment("Range D5's comment.");

// Delete a single cell comment
 worksheet.getRange("D5").getComment().delete();

// Clear multiple comments from a range of cells 
 worksheet.getRange("C3:D4").clearComments();