MESCIUS MultiRow for Windows Forms 12.0J
テキストの設定

GcProgressBarCellにおけるテキストの設定と活用について解説します。
書式の設定
GcProgressBarCellに表示するテキストは、DisplayTextFormatプロパティを使って指定します。このプロパティに、キーワードとリテラル文字を設定することで容易にテキストの書式を作成できます。テキストのフォントは、Fontプロパティを使用して設定します。セルにテキストを表示しない場合は、DisplayTextFormatプロパティを空にします。

テキストの書式は、「値のタイプ」と「値の書式」二つの部分から構成されます。設計時にテキストの書式を設定するには、プロパティウィンドウから DisplayTextFormatプロパティを選択して、「テキストの表示設定」ダイアログを開いて行います。



DisplayTextFormatプロパティのデフォルト値は"[p]%|#0"です。コードで設定するときは、下記のように定義します。 
Dim GcProgressBarCell1 = New GrapeCity.Win.MultiRow.PlusPak.GcProgressBarCell()
GcProgressBarCell1.DisplayTextFormat = "値のタイプ|値の書式"
GrapeCity.Win.MultiRow.PlusPak.GcProgressBarCell gcProgressBarCell1 = new GrapeCity.Win.MultiRow.PlusPak.GcProgressBarCell();
gcProgressBarCell1.DisplayTextFormat = "値のタイプ|値の書式";

「値のタイプ」に使用できるキーワード

「値のタイプ」に指定できるキーワードは下記のとおりです。これらのキーワードのほかに、任意のリテラル文字と組み合わせて表示するテキストの書式を設定できます。

キーワード 説明
[v] セルの現在値(Valueプロパティの値)
[p] 全体の進行範囲に対する完成の度合い(Valueプロパティの値に基づいたパーセンテージ)
[s] 全体の進行範囲(Maximum-Minimumの値)
[m] セルの最小値(Minimumプロパティ)
[M] セルの最大値(Maximumプロパティ)
[^v] タスク完了までの残り値(Maximum-Valueの値)
[^p] 全体の進行範囲に対する未完成の度合い(完了までの残り値に基づいたパーセンテージ)

「値の書式」に使用できるキーワード

「値の書式」では、「値のタイプ」で設定する値の書式を指定します。書式に指定できるキーワードは下記のとおりです。それ以外の文字は使用できません。

キーワード 説明
# 数値の桁を指定します。値が0の場合は何も表示されません。
0 数値の桁を指定します。値が0の場合は0を表示します。
.(ピリオド) 小数点の表示位置を指定します。
,(コンマ) 桁区切り記号の表示位置を指定します。

キーワードの活用例

以下に、DisplayTextFormatプロパティのキーワードを活用した、いくつかの用例を示します。

用例1
Imports GrapeCity.Win.MultiRow
Imports PlusPakCell = GrapeCity.Win.MultiRow.PlusPak

Dim GcProgressBarCell1 = New PlusPakCell.GcProgressBarCell()
GcProgressBarCell1.Minimum = 0
GcProgressBarCell1.Maximum = 1234
GcProgressBarCell1.Value = 456
GcProgressBarCell1.DisplayTextFormat = "[s]件のうち[v]件のデータを更新しました|#0"

GcProgressBarCell1.Size = New Size(250, 21)

GcMultiRow1.Template = Template.CreateGridTemplate(New Cell() {GcProgressBarCell1})
GcMultiRow1.RowCount = 3
gcProgressBar1.Minimum = 0;
gcProgressBar1.Maximum = 1234;
gcProgressBar1.Value = 456;
gcProgressBar1.DisplayTextFormat = "[s]件のうち[v]件のデータを更新しました|#0";



用例2
Imports GrapeCity.Win.MultiRow
Imports PlusPakCell = GrapeCity.Win.MultiRow.PlusPak

Dim GcProgressBarCell1 = New PlusPakCell.GcProgressBarCell()

GcProgressBarCell1.FlatStyle = FlatStyle.Flat
GcProgressBarCell1.ProgressBarStyle = PlusPakCell.ProgressStyle.Continuous
GcProgressBarCell1.Minimum = 0
GcProgressBarCell1.Maximum = 12
GcProgressBarCell1.Value = 8.6
GcProgressBarCell1.DisplayTextFormat = "空き領域 [^v] GB/ [M] GB([p]%使用済み)|#0.0"

GcProgressBarCell1.Size = New Size(250, 21)

GcMultiRow1.Template = Template.CreateGridTemplate(New Cell() {GcProgressBarCell1})
GcMultiRow1.RowCount = 3
using GrapeCity.Win.MultiRow;
using PlusPakCell = GrapeCity.Win.MultiRow.PlusPak;

PlusPakCell.GcProgressBarCell gcProgressBarCell1 = new PlusPakCell.GcProgressBarCell();
gcProgressBarCell1.FlatStyle = FlatStyle.Flat;
gcProgressBarCell1.ProgressBarStyle = PlusPakCell.ProgressStyle.Continuous;
gcProgressBarCell1.Minimum = 0;
gcProgressBarCell1.Maximum = 12;
gcProgressBarCell1.Value = 8.6;
gcProgressBarCell1.DisplayTextFormat = "空き領域 [^v] GB/ [M] GB([p]%使用済み)|#0.0";

gcProgressBarCell1.Size = new Size(250, 21);

gcMultiRow1.Template = Template.CreateGridTemplate(new Cell[] { gcProgressBarCell1 });
gcMultiRow1.RowCount = 3;

テキストの配置
CellStyle.TextAlignプロパティで、テキストの水平方向と垂直方向の配置を設定できます。それぞれの値に対応する位置は次のとおりです。



次のサンプルコードは、テキストをコントロールの左中央に配置します。           
Imports GrapeCity.Win.MultiRow
Imports PlusPakCell = GrapeCity.Win.MultiRow.PlusPak

Dim GcProgressBarCell1 = New PlusPakCell.GcProgressBarCell()
' テキストを垂直方向の中央、左揃えに配置します。
GcProgressBarCell1.Style.TextAlign = MultiRowContentAlignment.MiddleLeft

GcMultiRow1.Template = Template.CreateGridTemplate(New Cell() {GcProgressBarCell1})
GcMultiRow1.RowCount = 3
using GrapeCity.Win.MultiRow;
using PlusPakCell = GrapeCity.Win.MultiRow.PlusPak;

PlusPakCell.GcProgressBarCell gcProgressBarCell1 = new PlusPakCell.GcProgressBarCell();
// テキストを垂直方向の中央、左揃えに配置します。
gcProgressBarCell1.Style.TextAlign = MultiRowContentAlignment.MiddleLeft;

gcMultiRow1.Template = Template.CreateGridTemplate(new Cell[] { gcProgressBarCell1 });
gcMultiRow1.RowCount = 3;
テキストの向き
TextOrientationプロパティを使用して、テキストの向きを設定できます。文字の縦表示は、TextOrientationプロパティをDownwardか、またはUpwardに設定します。漢字やひらがななどの日本語だけを縦に表示する場合は、VerticalFarEastHorizontalRotatedFarEastを使用します。

次のサンプルコードは、セルを縦に表示し、日本語も縦方向に表示する方法を示します。
Imports GrapeCity.Win.MultiRow
Imports PlusPakCell = GrapeCity.Win.MultiRow.PlusPak

Dim GcProgressBarCell1 = New PlusPakCell.GcProgressBarCell()
' GcProgressBarCell を縦方向に配置します。 
GcProgressBarCell1.Orientation = Orientation.Vertical
' 日本語文字を縦方向に表示します。 
GcProgressBarCell1.TextOrientation = GrapeCity.Win.Common.TextOrientation.VerticalFarEast
' GcProgressBarCell の書式を設定します。
GcProgressBarCell1.DisplayTextFormat = "[p]%完成しました|#0"
GcProgressBarCell1.Value = 80
GcProgressBarCell1.Size = New Size(21, 200)

GcMultiRow1.Template = Template.CreateGridTemplate(New Cell() {GcProgressBarCell1})
GcMultiRow1.RowCount = 3
using GrapeCity.Win.MultiRow;
using PlusPakCell = GrapeCity.Win.MultiRow.PlusPak;

PlusPakCell.GcProgressBarCell gcProgressBarCell1  = new PlusPakCell.GcProgressBarCell();
// GcProgressBarCell を縦方向に配置します。 
gcProgressBarCell1.Orientation = Orientation.Vertical;
// 日本語文字を縦方向に表示します。 
gcProgressBarCell1.TextOrientation = GrapeCity.Win.Common.TextOrientation.VerticalFarEast;
// GcProgressBarCell の書式を設定します。
gcProgressBarCell1.DisplayTextFormat = "[p]%完成しました|#0";
gcProgressBarCell1.Value = 80;
gcProgressBarCell1.Size = new Size(21, 200);

gcMultiRow1.Template = Template.CreateGridTemplate(new Cell[] {gcProgressBarCell1});
gcMultiRow1.RowCount = 3;
   
関連トピック

 

 


© MESCIUS inc. All rights reserved.