Excelなどでは、セル内に文字を納められるようになっていますが、FileMakerでもそれっぽくできます。
Excelの場合
Excelでは、セルの設定でセル内に入力された文字列などを収められます。
この設定で、ちょっとセルの枠に収まらない文字列を入れてみると、小さくセル内に収まります。
FileMakerの場合
FileMakerの場合は、TextSize(ver.7.0以上)という関数で指定できます。
このケースでは、10文字ごとにテキストサイズを変化させています。
フィールド(セル)を動的に変化させることはできませんが、すでにレイアウトに設置しているフィールドに合わせて文字のサイズを変えています。
文字数が30を超えるようであれば、デフォルトで12ポイントにしています。
どこで設定するか?
このサンプルのようにフィールドの設定で計算式に指定してもいいですし、スクリプト内の変数の式、また、レイアウトのパーツとして設定してもOKです。
表示を確認する
では、この計算式を実行してみましょう。
0〜10文字の場合
11〜20文字の場合
21〜30文字の場合
31文字〜の場合
case文でいうところのどの条件にも当てはまらないので、12ポイントで表示されます。
Excelと違うところ
Excelでは、どんなに長い文章でも指定されてセルの幅に合わせて文字列を表示しますが、FileMakerの場合は、表示する文字数に応じて文字ポイントの計算をする必要があります。
フィールドの幅や高さを考慮して、何文字入るか、というのをあらかじめ考慮しておかなければ、むちゃくちゃ長い文字列だと表示しているフィールドに入りきらない、ということになります。
ちょっと応用した使い方
ボタンバーツール
ボタンバーで、それぞれのボタン名の長さが違うけれど同じ幅で収めたい、という時に使えたりします。
ボタンバーツールのボタン名の部分で計算式を設定するやり方です。
それぞれを設定して表示すると、以下のようになります。
タブ名
タブコントロールのタブ名にも計算式は使えるので、ここでも指定できます。
31文字以上
長すぎると、もはやタブの役目を果たしませんね。
いろいろなところで試してください〜