PowerTools SPREAD for Windows Forms 10.0J > 開発者ガイド > セル型 > InputManセル > GcTimeSpan型セル > 書式設定(GcTimeSpan型セル) > フィールドオブジェクトによる書式設定(GcTimeSpan型セル) |
ここでは、フィールドオブジェクトによる書式設定について説明します。
入力時の書式を設定する入力フィールドには、次の7種類のフィールドが提供されており、これらのフィールドオブジェクトを使って書式を設定することができます。
フィールド(クラス) | 説明 |
---|---|
TimeSpanLiteralFieldInfo | リテラル文字フィールド |
TimeSpanSignFieldInfo | 符号入力フィールド |
TimeSpanDayFieldInfo | 日入力フィールド |
TimeSpanHourFieldInfo | 時間入力フィールド |
TimeSpanMinuteFieldInfo | 分入力フィールド |
TimeSpanSecondFieldInfo | 秒入力フィールド |
TimeSpanDecimalFieldInfo | 小数入力フィールド |
また、表示フィールドでは、次の7種類のフィールドが提供されています。
フィールド(クラス) | 説明 |
---|---|
TimeSpanLiteralDisplayFieldInfo | リテラル文字フィールド |
TimeSpanSignDisplayFieldInfo | 符号表示フィールド |
TimeSpanDayDisplayFieldInfo | 日表示フィールド |
TimeSpanHourDisplayFieldInfo | 時間表示フィールド |
TimeSpanMinuteDisplayFieldInfo | 分表示フィールド |
TimeSpanSecondDisplayFieldInfo | 秒表示フィールド |
TimeSpanDecimalDisplaylFieldInfo | 小数表示フィールド |
タイムスパンの書式は、入力および表示用の各フィールドコレクションに、前項で解説したフィールドオブジェクトを組み合わせて作成します。
入力書式を設定するには、Add またはAddRange メソッドを使用して、TimeSpanFieldCollectionInfo に入力用フィールドオブジェクトを追加します。表示書式は、Add またはAddRange メソッドを使用して、表示用フィールドオブジェクトをTimeSpanDisplayFieldCollectionInfo に追加します。
次のサンプルコードは、以下の図のようにGcTimeSpan型セルに入力および表示書式を設定する例です。
C# |
コードのコピー
|
---|---|
GrapeCity.Win.Spread.InputMan.CellType.GcTimeSpanCellType gcTimeSpan1 = new GrapeCity.Win.Spread.InputMan.CellType.GcTimeSpanCellType(); // フィールドをクリアします。 gcTimeSpan1.Fields.Clear(); gcTimeSpan1.DisplayFields.Clear(); // 入力フィールドのオブジェクトを作成します。 GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanHourFieldInfo timeSpanHourField1 = new GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanHourFieldInfo(2); GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanLiteralFieldInfo timeSpanLiteralField1 = new GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanLiteralFieldInfo(":"); GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanMinuteFieldInfo timeSpanMinuteField1 = new GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanMinuteFieldInfo(2); // フィールドをコレクションに追加してコントロールに入力書式を設定します。 gcTimeSpan1.Fields.AddRange(new GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanFieldInfo[] { timeSpanHourField1, timeSpanLiteralField1, timeSpanMinuteField1}); // 表示フィールドのオブジェクトを作成します。 GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanHourDisplayFieldInfo timeSpanHourDisplayField1 = new GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanHourDisplayFieldInfo(); GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanLiteralDisplayFieldInfo timeSpanLiteralDisplayField1 = new GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanLiteralDisplayFieldInfo("時間"); GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanMinuteDisplayFieldInfo timeSpanMinuteDisplayField1 = new GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanMinuteDisplayFieldInfo(); GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanLiteralDisplayFieldInfo timeSpanLiteralDisplayField2 = new GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanLiteralDisplayFieldInfo("分"); // フィールドをコレクションに追加してコントロールに表示書式を設定します。 gcTimeSpan1.DisplayFields.AddRange(new GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanDisplayFieldInfo[] { timeSpanHourDisplayField1, timeSpanLiteralDisplayField1, timeSpanMinuteDisplayField1, timeSpanLiteralDisplayField2}); fpSpread1.ActiveSheet.Cells[0, 0].CellType = gcTimeSpan1; |
Visual Basic |
コードのコピー
|
---|---|
Dim gcTimeSpan1 As New GrapeCity.Win.Spread.InputMan.CellType.GcTimeSpanCellType() ' フィールドをクリアします。 gcTimeSpan1.Fields.Clear() gcTimeSpan1.DisplayFields.Clear() ' 入力フィールドのオブジェクトを作成します。 Dim timeSpanHourField1 As New GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanHourFieldInfo(2) Dim timeSpanLiteralField1 As New GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanLiteralFieldInfo(":") Dim timeSpanMinuteField1 As New GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanMinuteFieldInfo(2) ' フィールドをコレクションに追加してコントロールに入力書式を設定します。 gcTimeSpan1.Fields.AddRange(New GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanFieldInfo() {timeSpanHourField1, timeSpanLiteralField1, timeSpanMinuteField1}) ' 表示フィールドのオブジェクトを作成します。 Dim timeSpanHourDisplayField1 As New GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanHourDisplayFieldInfo() Dim timeSpanLiteralDisplayField1 As New GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanLiteralDisplayFieldInfo("時間") Dim timeSpanMinuteDisplayField1 As New GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanMinuteDisplayFieldInfo() Dim timeSpanLiteralDisplayField2 As New GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanLiteralDisplayFieldInfo("分") ' フィールドをコレクションに追加してコントロールに表示書式を設定します。 gcTimeSpan1.DisplayFields.AddRange(New GrapeCity.Win.Spread.InputMan.CellType.Fields.TimeSpanDisplayFieldInfo() {timeSpanHourDisplayField1, timeSpanLiteralDisplayField1, timeSpanMinuteDisplayField1, timeSpanLiteralDisplayField2}) FpSpread1.ActiveSheet.Cells(0, 0).CellType = gcTimeSpan1 |
フィールドオブジェクトをTimeSpanFieldCollectionInfo または TimeSpanDisplayFieldCollectionInfo コレクションから削除するには、Remove メソッドまたは、RemoveAt メソッドを使用します。
次のサンプルコードは、TimeSpanFieldCollection コレクションの先頭のフィールドを削除する例です。
C# |
コードのコピー
|
---|---|
// コレクションの先頭のオブジェクトを削除 GrapeCity.Win.Spread.InputMan.CellType.GcTimeSpanCellType cell = (fpSpread1.ActiveSheet.GetCellType(0, 0) as GrapeCity.Win.Spread.InputMan.CellType.GcTimeSpanCellType); cell.Fields.RemoveAt(0); |
Visual Basic |
コードのコピー
|
---|---|
' コレクションの先頭のオブジェクトを削除 Dim cell As GrapeCity.Win.Spread.InputMan.CellType.GcTimeSpanCellType = TryCast(FpSpread1.ActiveSheet.GetCellType(0, 0), GrapeCity.Win.Spread.InputMan.CellType.GcTimeSpanCellType) cell.Fields.RemoveAt(0) |
ここでは、GcTimeSpan型セルの入力フィールドに設定可能な7種類のフィールドについて、すべてのフィールドに共通な設定項目と各フィールドに特化した設定項目にわけて解説します。
これらのプロパティは、タイムスパンコントロールのすべての入力フィールドオブジェクトに共通な設定項目です。
プロパティ | 説明 |
---|---|
BackColor | フィールド背景色を設定します。 |
Font | フィールドに表示される文字列のフォントを設定します。 |
ForeColor | フィールド前景色を設定します。 |
Margin | フィールド領域の外枠の距離を設定します。 セルの境界線からの距離や、他のフィールドとの間隔を設定する際に使用します。 |
Padding | フィールド領域からテキストの表示エリアまでの距離を設定します。 |
リテラル文字フィールド(TimeSpanLiteralFieldInfo クラス)は、コントロールに表示するリテラル文字を設定します。
プロパティ | 説明 |
---|---|
Text | リテラル文字として表示する文字列を設定します。 |
符号入力フィールド(TimeSpanSignFieldInfo クラス)は、符号を入力するフィールドです。
プロパティ | 説明 |
---|---|
NegativePattern | 負数値の符号を設定します。 |
PositivePattern | 正数値の符号を設定します。 |
日入力フィールド(TimeSpanDayFieldInfo クラス)は、日数を入力するフィールドです。
プロパティ | 説明 |
---|---|
Digits | フィールドの桁数を設定します。 |
PromptChar | プロンプト文字を設定します。 |
SpinIncrement | スピン機能による値の変化量を設定します。 |
時間入力フィールド(TimeSpanHourFieldInfo クラス)は、時間を入力するフィールドです。
プロパティ | 説明 |
---|---|
Digits | フィールドの桁数を設定します。 |
PromptChar | プロンプト文字を設定します。 |
SpinIncrement | スピン機能による値の変化量を設定します。 |
分入力フィールド(TimeSpanMinuteFieldInfo クラス)は、分数を入力するフィールドです。
プロパティ | 説明 |
---|---|
Digits | フィールドの桁数を設定します。 |
PromptChar | プロンプト文字を設定します。 |
SpinIncrement | スピン機能による値の変化量を設定します。 |
秒入力フィールド(TimeSpanSecondFieldInfo クラス)は、秒数を入力するフィールドです。
プロパティ | 説明 |
---|---|
Digits | フィールドの桁数を設定します。 |
PromptChar | プロンプト文字を設定します。 |
SpinIncrement | スピン機能による値の変化量を設定します。 |
小数入力フィールド(TimeSpanDecimalField クラス)は、小数を入力するフィールドです。
プロパティ | 説明 |
---|---|
Digits | フィールドの桁数を設定します。 |
PromptChar | プロンプト文字を設定します。 |
SpinIncrement | スピン機能による値の変化量を設定します。 |
ここでは、GcTimeSpan型セルの表示フィールドに設定可能な7種類のフィールドについて、すべてのフィールドに共通な設定項目と各フィールドに特化した設定項目にわけて解説します。
これらのプロパティは、タイムスパンコントロールのすべての表示フィールドオブジェクトに共通な設定項目です。
プロパティ | 説明 |
---|---|
BackColor | フィールド背景色を設定します。 |
Font | フィールドに表示される文字列のフォントを設定します。 |
ForeColor | フィールド前景色を設定します。 |
Margin | フィールド領域の外枠の距離を設定します。 セルの境界線からの距離や、他のフィールドとの間隔を設定する際に使用します。 |
Padding | フィールド領域からテキストの表示エリアまでの距離を設定します。 |
リテラル文字表示フィールド(TimeSpanLiteralDisplayFieldInfo クラス)は、コントロールに表示するリテラル文字を設定します。
プロパティ | 説明 |
---|---|
Text | リテラル文字として表示する文字列を設定します。 |
符号表示フィールド(TimeSpanSignDisplayFieldInfo クラス)は、符号を表示するフィールドです。
プロパティ | 説明 |
---|---|
NegativePattern | 負数値の符号を設定します。 |
PositivePattern | 正数値の符号を設定します。 |
日表示フィールド(TimeSpanDayDisplayFieldInfo クラス)は、日数を表示するフィールドです。
プロパティ | 説明 |
---|---|
Digits | フィールドの桁数を設定します。 |
PromptChar | プロンプト文字を設定します。 |
時間表示フィールド(TimeSpanHourDisplayFieldInfo クラス)は、時間を表示するフィールドです。
プロパティ | 説明 |
---|---|
Digits | フィールドの桁数を設定します。 |
PromptChar | プロンプト文字を設定します。 |
分表示フィールド(TimeSpanMinuteDisplayFieldInfo クラス)は、分数を表示するフィールドです。
プロパティ | 説明 |
---|---|
Digits | フィールドの桁数を設定します。 |
PromptChar | プロンプト文字を設定します。 |
秒表示フィールド(TimeSpanSecondDisplayFieldInfo クラス)は、秒数を表示するフィールドです。
プロパティ | 説明 |
---|---|
Digits | フィールドの桁数を設定します。 |
PromptChar | プロンプト文字を設定します。 |
小数表示フィールド(TimeSpanDecimalDisplaylFieldInfo クラス)は、小数を表示するフィールドです。
プロパティ | 説明 |
---|---|
Digits | フィールドの桁数を設定します。 |
PromptChar | プロンプト文字を設定します。 |