GrapeCity.devlog

グレープシティ株式会社のDeveloper Tools〈開発支援ツール〉の最新情報をお届けします。製品のTIPSや発売情報、イベントのお知らせなどをいち早く発信中です。

セルに長い文章を表示する

こんにちは。SPREADチームでテクニカルサポートを担当している小津です。 一覧の備考欄や詳細欄など、セルで複数行にわたる長い文章を表示することはありませんか。限られた領域での長文の表示や編集は、工夫次第でユーザーの使い勝手に差が生じる部分と感じています。 今日は、そんなときに役立つ製品機能をご紹介します。

ozu16nov_10

スクロール単位

上のイメージの詳細欄のように、セルのテキストを折り返して全体を表示すると、ユーザーはシートをスクロールしながら長い文章を参照できます。このとき注意したいのが、行方向のスクロール単位。初期設定ではシートは行単位で(1行ずつ)スクロールされます。ほんの少しスクロールするつもりが、次の行が表示されたとたん、文章全体が表示領域から隠れてしまうことも。

Pixel(ピクセル単位)、またはPixelAndRow(ピクセル&行単位のハイブリッド)がおすすめです。PixelAndRowは、ユーザーがマウスでスクロールしながら長い文章を読み、読み終わってマウスを離すと1つ前か次の行(どちらか近い方)にスクロール、という動きになります(試してみたくなった方は次のサンプルコードをどうぞ!)。

Visual Basic

[code lang="vb"] FpSpread1.VerticalScrollBarMode = FarPoint.Win.VerticalScrollMode.PixelAndRow FpSpread1.ScrollBarTrackPolicy = ScrollBarTrackPolicy.Vertical[/code]

C#

[code lang="c-sharp"] fpSpread1.VerticalScrollBarMode = FarPoint.Win.VerticalScrollMode.PixelAndRow; fpSpread1.ScrollBarTrackPolicy = ScrollBarTrackPolicy.Vertical; [/code]

キャレットの初期位置

初期設定ではセルをダブルクリックすると、キャレットがテキストの最後に表示されます。長い文章の真ん中あたり、ココを編集したいのに!ということも。そんなときに役立つのが、キャレットの初期位置の設定です。

MouseLocationがおすすめです。長い文章のココを修正したい、とユーザーがダブルクリックしたその位置にキャレットが表示されます。

Visual Basic

[code lang="vb"] FpSpread1.Sheets(0).Columns(3).CellType = New GeneralCellType() With { .Multiline = True, .WordWrap = True, .FocusPosition = EditorFocusCursorPosition.MouseLocation }[/code]

C#

[code lang="c-sharp"] fpSpread1.Sheets[0].Columns[3].CellType = new GeneralCellType() { Multiline =true, WordWrap =true, FocusPosition =EditorFocusCursorPosition.MouseLocation };[/code]

省略記号とテキストチップ

行の高さを一定に保つ必要があるなど、セルにテキスト全体を表示することが不適切な場合もあります。次のように省略記号(...)とテキストチップを使用する方法があります。

ozu16no_21

ドロップダウンエディタ

GcTextBox型セルを使用すると、編集用のドロップダウンエディタを表示できます。

ozu16no_22

Visual Basic

[code lang="vb"] 'テキストチップを表示 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[/code]

C#

[code lang="c-sharp"] //テキストチップを表示 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; [/code]

機会があれば、ぜひご活用ください!

Copyright © GrapeCity, Inc. All Rights Reserved.