4D v13.4

マルチスタイル (リッチテキストエリア)

ホーム

 
4D v13.4
マルチスタイル (リッチテキストエリア)

マルチスタイル (リッチテキストエリア)  


 

概要  

4Dでは文字ごとににスタイルを設定できるリッチテキストエリアを使用できます。例えばテキストに太字、イタリック、文字色を持たせることができます:

この新しい機能は文字およびテキストタイプのフィールドや変数およびリストボックスのセルに適用されます。ページおよびリストフォームで、 表示および印刷がサポートされます。

このリッチテキスト機能を設定するためにプロパティリストのオプションを使用します。

利用可能な属性はフォント、サイズ、スタイル、文字色、そして (Windows のみ) 背景色です。リッチテキストエリアでスタイルを更新するには 2つの方法があります:

  • 実行中に自動ポップアップメニューを使用する (このメニューを利用可能にするにはプロパティリストで設定します)。
  • OBJECT SET STYLED TEXT ATTRIBUTESコマンドを使用する。

リッチテキストエリアにて、スタイル属性は <SPAN> タグとして格納されます。テキストエリアが表示されると、これらのタグを4Dが解釈します。これは開発者がプログラムを使用してスタイル属性を指定したり変更したりできることを意味します。4Dがサポートする <SPAN> タグは後述の通りです。OBJECT Get plain textコマンドはスタイルタグなしの生テキストを取り出します。

注: 以下のコンテキストではリッチテキストエリアを使用できません: 入力フィルター、クイックレポート、ラベルエディター

リッチテキストのサポートを有効にして設定するためのプロパティは文字またはテキスト型の入力可変数、フィールド、リストボックスセルで利用できます。

このオプション ("テキスト" テーマ ) は、選択されたエリアで指定されたスタイルを利用可能にするかどうかを指定するものです。このオプショ ンがチェックされていると、4D はエリア中の <SPAN> HTMLタグをスタイル属性として解釈します。

デフォルトでこのオプションはチェックされていません。

このオプションはマルチスタイルオプションがチェックされているときにのみ"テキスト"テーマに表示されます。
このオプションがチェックされていると、エリアはたとえスタイルの変更が行われていなくても、テキストとともにスタイルタグを格納します。 この場合、タグはデフォルトスタイルに対応します。このオプションがチェックされていないと、更新されたスタイルタグのみが格納されます。

以下のようにスタイルが変更されたテキストがあります:

"デフォルトスタイルタグを格納"オプションがチェックされていない場合、エリアは更新されたスタイルのみを格納します。格納される内容は以下のようになります:

What a<SPAN STYLE="font-size:13.5pt">beautiful</SPAN> day !

オプションがチェックされていると、エリアはすべてのフォーマット情報を格納します。先頭の汎用タグはデフォルトスタイルを定義し、変更されたスタイルはネストされたタグに書き込まれます。格納される内容は以下のようになります:

<SPAN  STYLE="font-family:'Arial';font-size:9pt;text-align:left;font-weight:normal;font-style:normal;text-decoration:none;color:#000000;background-color:#FFFFFF">What  a <SPAN STYLE="font-size:13.5pt">beautiful</SPAN>  day!</SPAN>

このオプション ("入力"テーマ ) はマルチスタイルオプションが チェックされているときにのみ表示されます。

このオプションが選択されていると、ユーザがエリアに入力中、右クリックでポップアップメニューが表示されるようになります。このポップアップメニューでは標準のテキスト編集コマンド ( カット、コピー、 ペースト ) の他、スタイルの変更を行うためのフォント、サイズ、スタイル、カラー、そして Windows のみ背景色コマンドが提供されます:

ユーザーがこのポップアップメニューを使用してスタイル属性を編集する と、4DはOn After Editフォームイベントを生成します。

注:

  • コマンドを使用してスタイ ルを編集することもできます。この場合フォームイベントは生成されないことに留意してください。
  • Mac OSでは"strikethrough (取り消し線)"スタイルをサポートしていません。しかし対応するタグをプログラムで使用することはできます。

サポートされるスタイル属性 (フォント、サイズ、スタイルそしてカラー) は以下のケースでドラッグ&ドロップやコピー/ペースト時にも保持され ます:

  • 4D内での異なるリッチテキストエリア間 (テキスト変数/フィールド、そしてリストボックス)
  • 4D Writeエリアと4Dリッチテキストエリア間
  • 外部スタイル付きテキストエリアと4Dリッチテキストエリア間

その他の場合、スタイルはコンテキストに基づいて保持されます。

プログラムでテキストオブジェクトを操作するために使用することのできるコマンドは、テキストに統合されたスタイルタグを無視します。以下のコマンドが関連します:

文字列を操作するコマンドとともにこれらのコマンドを使用する際、新しいコマンドOBJECT Get plain textを使用してフォーマット文字をフィルターしなければならないことに留意してください:

 HIGHLIGHT TEXT([Products]Notes;1;Length(OBJECT Get plain text([Products]Notes))+1)

  • オブジェクトプロパティ テーマ
    オブジェクトのスタイルを変更するために使用するコマンド (例えばOBJECT SET FONT) は選択された文字列ではなく、指定されたオブジェクト全体を対象とします。 コマンドが実行されたときオブジェクトにフォーカスがない場合、変更はオブジェクト ( テキストエリア ) とそれに割り当てられた変数に同時に適用されます。オブジェクトにフォーカスがある場合、変更はそのオブ ジェクトに適用され、割り当てられた変数には適用されません。この場合変更は変数に対してオブジェクトがフォーカスを失ったときにのみ適用されます。テキストエリアに対するプログラムを行う際はこの原則を忘れないでください。

"デフォルトスタイルタグを格納"がそのオブジェクトに対して選択されている場合、これらのコマンドを使用すると、オブジェクトに保存されているタグが更新されます。

Get edited text (フォームイベントテーマ ) がリッチテキストエリアで使用されると、コマンドはすべてのスタイルタグを含む現在のエリアのすべてのテキストを返します。

編集された生テキスト (タグなしのテキスト) を取り出すには、OBJECT Get plain textコマンドを使用しなければなりません:

 OBJECT Get plain text(Get edited text)

マルチスタイルオブジェクトに対して行われるクエリや並び替えはオブジェクトに保存されたスタイルタグを考慮に入れます。単語中でスタイルの変更が行われた場合、その単語の検索は失敗します。

有効な検索や並び替えを行うには、OBJECT Get plain textコマン ドを使用します。例えば:

 QUERY BY FORMULA([MyTable];OBJECT Get plain text([MyTable]MyFieldStyle)="very well")

ここでは <SPAN> タグの属性としてサポートされる4Dのリッチテキストエリアのスタイルを説明します。これらの属性を使用してカスタムスタイルを指定することも可能です。ここで説明されている属性のみを4Dはサポートします。

<SPAN STYLE="font-family: フォントファミリ"> ... </SPAN>

<SPAN STYLE="font-size: 20pt"> ... </SPAN>

  • ボールド
    <SPAN STYLE="font-weight: bold"> ... </SPAN>
  • イタリックまたは普通
    <SPAN STYLE="font-style: italic"> ... </SPAN>
    <SPAN STYLE="font-style: normal"> ... </SPAN>
  • 下線
    <SPAN STYLE="text-decoration: underline"> ... </SPAN>
  • 取り消し線
    <SPAN STYLE="text-decoration:line-through">...</SPAN>
    注 : Mac OS では取り消し線がサポートされていません。指定しても表示されませんが、プログラムで管理することはできます。

<SPAN STYLE="color:green"> ... </SPAN> 
または
<SPAN STYLE="color:#006CCC">...</SPAN>

<SPAN STYLE="background-color:green"> ... </SPAN>
または
<SPAN STYLE="background-color:#006CCC">...</SPAN>

注: Mac OSではこの属性が無視されます。オブジェクトが更新されるときにこの属性は取り除かれます。

フォントカラーと背景色属性では、カラー値としてRGBの16進およびCSSで定義されたHTMLカラー名を指定できます。: 


 
プロパティ 

プロダクト: 4D
テーマ: アクティブオブジェクトのプロパティ

 
タグ 

texte riche, rich text area***