MESCIUS SPREAD for Windows Forms 17.0J
セルコメント

SPREAD for Windows Forms では、ワークシートのセルにコメントを追加できます。 プレーンテキストのコメントまたはノートを追加するには、「セルノート」トピックを参照してください。

さらに、EnhancedShapeEngineプロパティを有効にして文字列、IRange.AddCommentメソッドを使用してリッチテキストのインスタンスを追加できます。

追加されたコメントをIRange.Commentプロパティを使用して編集できます。例えば、次の画像はデフォルトコメントとカスタマイズされたコメントの両方を表示します。カスタマイズされたコメントの場合は、常に表示するようにし、背景色、シェイプ罫線スタイル、罫線色などプロパティも設定されています。

次のサンプルコードは、コメントを設定する方法を示します。

C#
コードのコピー
// アクティブシートを取得します。
GrapeCity.Spreadsheet.IWorksheet TestActiveSheet = fpSpread1.AsWorkbook().ActiveSheet;
           
// 拡張シェイプエンジンを有効にします。
fpSpread1.Features.EnhancedShapeEngine = true;
           
string username = "Admin" + ":";
           
// リッチテキストオブジェクトを初期化します。
GrapeCity.Spreadsheet.RichText richText = new GrapeCity.Spreadsheet.RichText(username + "これはコメントをサポートする\r\nリッチテキストです。");
// スタイル設定
GrapeCity.Spreadsheet.Font font = GrapeCity.Spreadsheet.Font.Empty;
font.Bold = true;
GrapeCity.Spreadsheet.Font font2 = GrapeCity.Spreadsheet.Font.Empty;
font2.Italic = true;
font2.Underline = GrapeCity.Spreadsheet.UnderlineStyle.Double;
// リッチテキストにスタイルを追加します。
richText.Format(0, username.Length, font);
richText.Format(17, 9, font2);
// セルにコメントを追加します。
GrapeCity.Spreadsheet.IComment comment = TestActiveSheet.Cells["B2"].AddComment(richText);
           
// コメントスタイルをカスタマイズします。
TestActiveSheet.Cells["B2"].Comment.Visible = true; // 常にコメントを表示します。
TestActiveSheet.Cells["B2"].Comment.Shape.Fill.BackColor.ARGB = Color.Orange.ToArgb();  // コメントの背景色を変更します。
TestActiveSheet.Cells["B2"].Comment.Shape.Line.Style = GrapeCity.Drawing.LineStyle.ThickThin;   // 罫線のスタイルを変更します。
TestActiveSheet.Cells["B2"].Comment.Shape.Line.Weight = 5;  // 罫線の太さを変更します。
TestActiveSheet.Cells["B2"].Comment.Shape.Line.ForeColor.ARGB = Color.DeepSkyBlue.ToArgb(); // 罫線の色を変更します。
VB
コードのコピー
'アクティブシートを取得します。
Dim TestActiveSheet As GrapeCity.Spreadsheet.IWorksheet = FpSpread1.AsWorkbook().ActiveSheet
       
'拡張シェイプエンジンを有効にします。
FpSpread1.Features.EnhancedShapeEngine = True
Dim username As String = "Admin" & ":"
'リッチテキストオブジェクトを初期化します。
Dim richText As GrapeCity.Spreadsheet.RichText = New GrapeCity.Spreadsheet.RichText(username & vbCrLf & "これはコメントをサポートする" & vbCrLf & "リッチテキストです。")
'スタイル設定
Dim font As GrapeCity.Spreadsheet.Font = GrapeCity.Spreadsheet.Font.Empty
font.Bold = True
Dim font2 As GrapeCity.Spreadsheet.Font = GrapeCity.Spreadsheet.Font.Empty
font2.Italic = True
font2.Underline = GrapeCity.Spreadsheet.UnderlineStyle.Double
'リッチテキストにスタイルを追加します。
richText.Format(0, username.Length, font)
richText.Format(17, 9, font2)
'セルにコメントを追加します。
Dim comment As GrapeCity.Spreadsheet.IComment = TestActiveSheet.Cells("B2").AddComment(richText)
'コメントスタイルをカスタマイズします。
TestActiveSheet.Cells("B2").Comment.Visible = True  '常にコメントを表示します。
TestActiveSheet.Cells("B2").Comment.Shape.Fill.BackColor.ARGB = Color.Orange.ToArgb()   'コメントの背景色を変更します。
TestActiveSheet.Cells("B2").Comment.Shape.Line.Style = GrapeCity.Drawing.LineStyle.ThickThin    '罫線のスタイルを変更します。
TestActiveSheet.Cells("B2").Comment.Shape.Line.Weight = 5   '罫線の太さを変更します。
TestActiveSheet.Cells("B2").Comment.Shape.Line.ForeColor.ARGB = Color.DeepSkyBlue.ToArgb()  '罫線の色を変更します。

スレッド化されたコメント

Spread UI では、スレッド化されたコメントを表示することができます。これにより、ワークブックに複数のコメントを接続し、仮想会話のように表すことができます。

コードの使用

スレッド化されたコメントを追加するには、IRange.AddCommentThreaded メソッドを使用します。

C#
コードのコピー
// スレッド化されたコメント
fpSpread1.LegacyBehaviors = LegacyBehaviors.None;
fpSpread1.Features.EnhancedShapeEngine = true;
fpSpread1.AsWorkbook().TestActiveSheet.Cells["C5"].AddCommentThreaded("スレッド化されたコメントがサポートされています").AddReply("First reply");
VB
コードのコピー
' スレッド化されたコメント
 fpSpread1.LegacyBehaviors = LegacyBehaviors.None
 fpSpread1.Features.EnhancedShapeEngine = True
 fpSpread1.AsWorkbook().TestActiveSheet.Cells("C5").AddCommentThreaded("スレッド化されたコメントがサポートされています").AddReply("First reply")

グラデーションによる塗りつぶし効果

コメントに塗りつぶしの色やパターンなどのグラデーション効果を適用することで、コメントを強調表示することができます。

 comment-gradient

コードの使用

グラデーション効果を適用するには、IShapeBase インターフェースの Fill プロパティを使用します。このプロパティは、指定した図形の塗りつぶしの書式設定プロパティを含む、IFillFormat インターフェースのオブジェクトを返します。

C#
コードのコピー
fpSpread1.Features.EnhancedShapeEngine = true;
IShape shape;
shape = TestActiveSheet.Cells["A1"].AddComment("InsetPen = false").Shape;
TestActiveSheet.Cells["A1"].Comment.Visible = true;
shape.Fill.OneColorGradient(GrapeCity.Spreadsheet.Drawing.GradientStyle.FromCenter, 1, 1);
shape.Fill.GradientStops.Delete(0);
shape.Fill.GradientStops.Delete(0);
shape.Fill.GradientStops.Delete(0);
shape.Fill.GradientStops.Insert(0xffff00, 0);
shape.Fill.GradientStops.Insert(0xffffff, 0.5);
shape.Fill.GradientStops.Insert(0x00ffff, 1);
shape.Fill.GradientStops[0].Color.SchemeColor = 23;
shape.Fill.PathShadeType = GrapeCity.Drawing.PathShadeType.Shape;
IShape aa = fpSpread1.AsWorkbook().ActiveSheet.Cells["A1"].Comment.Shape;
VB
コードのコピー
fpSpread1.Features.EnhancedShapeEngine = True
Dim shape As IShape
shape = TestActiveSheet.Cells("A1").AddComment("InsetPen = false").Shape
TestActiveSheet.Cells("A1").Comment.Visible = True
shape.Fill.OneColorGradient(GrapeCity.Spreadsheet.Drawing.GradientStyle.FromCenter, 1, 1)
shape.Fill.GradientStops.Delete(0)
shape.Fill.GradientStops.Delete(0)
shape.Fill.GradientStops.Delete(0)
shape.Fill.GradientStops.Insert(0xffff00, 0)
shape.Fill.GradientStops.Insert(0xffffff, 0.5)
shape.Fill.GradientStops.Insert(0x00ffff, 1)
shape.Fill.GradientStops(0).Color.SchemeColor = 23
shape.Fill.PathShadeType = GrapeCity.Drawing.PathShadeType.Shape
Dim aa As IShape =  fpSpread1.AsWorkbook().ActiveSheet.Cells("A1").Comment.Shape

実行時の UI の使用

実行時に[塗りつぶし効果]ダイアログを使用して、グラデーション塗りつぶし効果を追加または操作できます。[塗りつぶし効果]ダイアログには、色、バリアント、シェーディングの種類、パターン、グラデーション効果を表示するためのサンプルプレビューなどのオプションが用意されています。

実行時に[塗りつぶし効果]ダイアログを呼び出すには、シート内のコメントを選択し、[Ctrl]+[1 ]のキーボード ショートカット キーを使用するか、組み込みのコンテキスト メニューから [コメントの書式設定] オプションを使用します。

塗りつぶし効果] ダイアログを開くには、[コメントの書式設定] ダイアログで、[]タブに移動し、[カラーピッカー]ドロップダウンから[塗りつぶし効果] オプションを選択します。

キーボード ショートカットを使用する場合は、ExcelCompatibleKeyboardShortcuts プロパティを true に設定する必要があります 。

実行時に [塗りつぶし効果]ダイアログを呼び出すには、BuiltInDialogs クラスの FillEffects メソッドを使用します。このクラスの詳細については、[組み込みダイアログの操作]を参照してください。

SPREADデザイナの使用

SPREAD デザイナでコメントを表示し、てグラデーション効果を追加するには、次の手順に従います。

  1. プロパティウィンドウで、EnhancedShapeEngine プロパティと ExcelCompatibleKeyboardShortcuts プロパティを true、に設定します。
  2. グラデーション効果を追加または変更するコメントを選択します。
  3. コメントの書式設定]ダイアログを呼び出します。
  4. ] タブから [塗りつぶし効果]をクリックして、[塗りつぶし効果] ダイアログを開きます。

文字列の方向

ワークシート内のコメント内の文字列を書式設定すると、コメントまたはノートの外観と読みやすさを向上し、注釈をより魅力的に表示できます。Spreadでは、文字列を水平または垂直に配置できます。そして、TextOrientation 列挙体の HorizontalRotatedFarEast プロパティを使用して、セルコメント内の文字列の方向と書式を設定できます。また、このプロパティを使用して、文字列を垂直に積み重ねて表示することができます。

メモ:セルコメントの文字列の方向を設定する場合は、EnhancedShapeEngine プロパティを true に設定する必要があります。

コードの使用

次のサンプルコードは、セルコメントの文字列の方向を変更する方法を示しています。

C#
コードのコピー
// セルコメントの積み重ねられた文字列の方向を描画するためのサポートを追加します
fpSpread1.Features.EnhancedShapeEngine = true;
var activeSheet = fpSpread1.AsWorkbook().ActiveSheet;
var comment = activeSheet.Cells["A1"].AddComment("Vertical\n text");
comment.Shape.TextFrame.Orientation = GrapeCity.Spreadsheet.Drawing.TextOrientation.HorizontalRotatedFarEast;
comment.Shape.TextFrame.WordWrap = true;
comment.Shape.Height = 200;
comment.Visible = true;
var comment2 = activeSheet.Cells["C1"].AddComment("このテキストの詳細を示します");
comment2.Shape.TextFrame.Orientation = GrapeCity.Spreadsheet.Drawing.TextOrientation.HorizontalRotatedFarEast;
comment2.Shape.TextFrame.WordWrap = true;
comment2.Shape.Height = 200;
comment2.Visible = true;
var comment3 = activeSheet.Cells["E1"].AddComment("abc");
comment3.Shape.TextFrame.Orientation = GrapeCity.Spreadsheet.Drawing.TextOrientation.HorizontalRotatedFarEast;
comment3.Shape.TextFrame.HorizontalAlignment = GrapeCity.Spreadsheet.HorizontalAlignment.Justify;
comment3.Shape.TextFrame.VerticalAlignment = GrapeCity.Spreadsheet.VerticalAlignment.Justify;
comment3.Shape.Height = 40;
comment3.Visible = true;
VB
コードのコピー
' セルコメントの積み重ねられた文字列の方向を描画するためのサポートを追加します
fpSpread1.Features.EnhancedShapeEngine = True
Dim activeSheet = fpSpread1.AsWorkbook().ActiveSheet
    
Dim comment = activeSheet.Cells("A1").AddComment("Vertical" & vbLf & " text")
comment.Shape.TextFrame.Orientation = GrapeCity.Spreadsheet.Drawing.TextOrientation.HorizontalRotatedFarEast
comment.Shape.TextFrame.WordWrap = True
comment.Shape.Height = 200
comment.Visible = True
Dim comment2 = activeSheet.Cells("C1").AddComment("このテキストの詳細を示します")
comment2.Shape.TextFrame.Orientation = GrapeCity.Spreadsheet.Drawing.TextOrientation.HorizontalRotatedFarEast
comment2.Shape.TextFrame.WordWrap = True
comment2.Shape.Height = 200
comment2.Visible = True
Dim comment3 = activeSheet.Cells("E1").AddComment("abc")
comment3.Shape.TextFrame.Orientation = GrapeCity.Spreadsheet.Drawing.TextOrientation.HorizontalRotatedFarEast
comment3.Shape.TextFrame.HorizontalAlignment = GrapeCity.Spreadsheet.HorizontalAlignment.Justify
comment3.Shape.TextFrame.VerticalAlignment = GrapeCity.Spreadsheet.VerticalAlignment.Justify
comment3.Shape.Height = 40
comment3.Visible = True

実行時に文字列の方向の変更

「コメントの書式設定」 ダイアログを使用して、セルコメントの文字列の方向を変更します。実行時にダイアログを開くには、次の手順に従います。

  1. 次のサンプルコードを実行して、コメントを含んだ Spread コントロールをロードします。
    C#
    コードのコピー
    fpSpread1.Features.EnhancedShapeEngine = true;
    var activeSheet = fpSpread1.AsWorkbook().ActiveSheet;
    var comment = activeSheet.Cells["A1"].AddComment("このテキストの詳細を示します");
    comment.Shape.TextFrame.Orientation = GrapeCity.Spreadsheet.Drawing.TextOrientation.HorizontalRotatedFarEast;
    comment.Visible = true;
    

    VB
    コードのコピー
    fpSpread1.Features.EnhancedShapeEngine = True
    Dim activeSheet = fpSpread1.AsWorkbook().ActiveSheet
    Dim comment = activeSheet.Cells("A1").AddComment("このテキストの詳細を示します")
    comment.Shape.TextFrame.Orientation = GrapeCity.Spreadsheet.Drawing.TextOrientation.HorizontalRotatedFarEast
    comment.Visible = True
    
  2. コメントを右クリックして、コンテキストメニューの「コメントの書式設」 オプションを選択します。
  3. 「配置」タブを選択します。
  4. 必要に応じて方向を選択して、「OK」をクリックします。

 

 


© MESCIUS inc. All rights reserved.