こんにちは。SPREADチームでテクニカルサポートを担当している小津です。
一覧の備考欄や詳細欄など、セルで複数行にわたる長い文章を表示することはありませんか。限られた領域での長文の表示や編集は、工夫次第でユーザーの使い勝手に差が生じる部分と感じています。
今日は、そんなときに役立つ製品機能をご紹介します。
スクロール単位
上のイメージの詳細欄のように、セルのテキストを折り返して全体を表示すると、ユーザーはシートをスクロールしながら長い文章を参照できます。このとき注意したいのが、行方向のスクロール単位。初期設定ではシートは行単位で(1行ずつ)スクロールされます。ほんの少しスクロールするつもりが、次の行が表示されたとたん、文章全体が表示領域から隠れてしまうことも。
Pixel(ピクセル単位)、またはPixelAndRow(ピクセル&行単位のハイブリッド)がおすすめです。PixelAndRowは、ユーザーがマウスでスクロールしながら長い文章を読み、読み終わってマウスを離すと1つ前か次の行(どちらか近い方)にスクロール、という動きになります(試してみたくなった方は次のサンプルコードをどうぞ!)。
Visual Basic
FpSpread1.VerticalScrollBarMode = FarPoint.Win.VerticalScrollMode.PixelAndRow FpSpread1.ScrollBarTrackPolicy = ScrollBarTrackPolicy.Vertical
C#
fpSpread1.VerticalScrollBarMode = FarPoint.Win.VerticalScrollMode.PixelAndRow; fpSpread1.ScrollBarTrackPolicy = ScrollBarTrackPolicy.Vertical;
キャレットの初期位置
初期設定ではセルをダブルクリックすると、キャレットがテキストの最後に表示されます。長い文章の真ん中あたり、ココを編集したいのに!ということも。そんなときに役立つのが、キャレットの初期位置の設定です。
MouseLocationがおすすめです。長い文章のココを修正したい、とユーザーがダブルクリックしたその位置にキャレットが表示されます。
Visual Basic
FpSpread1.Sheets(0).Columns(3).CellType = New GeneralCellType() With { .Multiline = True, .WordWrap = True, .FocusPosition = EditorFocusCursorPosition.MouseLocation }
C#
fpSpread1.Sheets[0].Columns[3].CellType = new GeneralCellType()
{
Multiline =true,
WordWrap =true,
FocusPosition =EditorFocusCursorPosition.MouseLocation
};
省略記号とテキストチップ
行の高さを一定に保つ必要があるなど、セルにテキスト全体を表示することが不適切な場合もあります。次のように省略記号(…)とテキストチップを使用する方法があります。
ドロップダウンエディタ
GcTextBox型セルを使用すると、編集用のドロップダウンエディタを表示できます。
Visual Basic
'テキストチップを表示 FpSpread1.TextTipPolicy = TextTipPolicy.Floating 'GcTextBox型セル(複数行、省略記号、折り返しの有効化) Dim gcText As New GcTextBoxCellType() With { .Multiline = True, .Ellipsis = EllipsisMode.EllipsisEnd, .WrapMode = WrapMode.WordWrap } 'ドロップダウンエディタの有効化 Dim sButton As New DropDownButtonInfo() With { .IsDefaultBehavior = True } gcText.SideButtons.Add(sButton) FpSpread1.Sheets(0).Columns(3).CellType = gcText
C#
//テキストチップを表示
fpSpread1.TextTipPolicy = TextTipPolicy.Floating;
//GcTextBox型セル(複数行、省略記号、折り返しの有効化)
GcTextBoxCellType gcText = new GcTextBoxCellType()
{
Multiline = true,
Ellipsis = EllipsisMode.EllipsisEnd,
WrapMode =WrapMode.WordWrap
};
//ドロップダウンエディタの有効化
DropDownButtonInfo sButton = new DropDownButtonInfo() {
IsDefaultBehavior = true
};
gcText.SideButtons.Add(sButton);
fpSpread1.Sheets[0].Columns[3].CellType = gcText;
機会があれば、ぜひご活用ください!



